Juniors. Juniors Everywhere.
Who am I?
Valerie Kraucunas
(cruh-soon-uss)
Administrative Assistant


Galvanize Web Development Immersive

Software Engineer
How did I get here?
- Teaching at Galvanize
- I have been thinking about this talk since last Develop Denver
- I have survived the "Junior Dev" job hunt and hiring process twice now
- My first coding job didn't give me the mentorship I was explicit about wanting
- I have heard horror stories from both juniors and seniors/employers about each other
I <3 My Mentors














Why I'm Talking About This
- Galvanize
- Turing
- General Assembly
- Skill Distillery
- DaVinci Coders
- DU Coding Bootcamp
- CodeCraft School
- Computer Science Grads
- Self-taught Individuals
What can be done about the imbalance in the Denver dev pool?

Juniors! Since I knew you couldn't help yourselves, and you attended this talk, there will be tips for you down here.
Methods of Integrating Juniors
Luxury Model

Intel, Google, Slack, Paypal, Amazon
Attainable Steps

Not Intel, Google, Slack, Paypal, Amazon
Methods of Integrating Juniors
Luxury Model
- Junior On-boarding Program
- Potentially with designated coordinator
- May include language education
- Dedicated Mentor
- Milestones
- Clear Path to Promotion
- Professional Development Funds
- Personal Development Funds
If a potential employer offers any form of this, it's an employment benefit. I encourage making more effort.

Methods of Integrating Juniors
Luxury Model


Valid Junior Dev Reactions


Valid Senior Dev/Hiring Manager Reactions
Methods of Integrating Juniors
Luxury Model
Smaller, Easier Steps
- Hiring & On-boarding Processes
- Team & Mentorship Strategies
- Communication
Hiring & On-boarding
Determine how much experience is really needed for the position

Write a job posting that leaves the door open for junior candidates
Before you post a job

Sometimes job postings are really for seniors. If there is no "senior" or "lead" or "principal" on the title, apply.
Hiring & On-boarding
Asking questions in an interview that apply to the work that will be done instead of "gotcha" trivia questions
In the Interview
Pair programming during an interview in place of white boarding

If/when you're asked a question you don't know the answer to, tell them what you do know. If they don't supply the answer, ask for it.
Hiring & On-boarding
Root out what gets this person excited about the problems your company is solving, what gets them excited about coding, what gets them excited in general
In the Interview
Hiring based on passion, drive, and ability to learn and problem solve will result in happier juniors and seniors

Have your struggles and your successes ready in your mind. If you are a career changer, it's encouraged to use examples from past jobs too.
Hiring & On-boarding
Have the people they would be working with interview them!
In the Interview

Ask if this is the case during the interview.
Hiring & On-boarding
Ask them what equipment they prefer
On-boarding
Have documentation on your project(s), listing versions of runtimes
Have a set up script
At least have a list of the technologies and tools needed to do their job

Bonus: Have documentation for setting up machines, have the newest employee update it as they set up their machine
Bootcampers: if there is no guide for setting up your machine, go back to your bootcamp setup instructions. Suggest one of the approaches below.
Hiring & On-boarding
On-boarding
A new employee lunch or happy hour
Have an assisted process and specific ticket in mind for their first PR
New employee checklist or even a scavenger hunt



It is perhaps uncomfortable, but not weird to spend time introducing yourself to people on day one. And more than devs if that's an option.
Team & Mentorship Strategies
Put them on a team with engineers you trust!

You can learn from anyone. Sometimes you're learning what not to do. That is also valuable. But get out of that situation when you can.
Team & Mentorship Strategies
Let them know you are open to questions
be responsive to their questions!

Don't ask questions until you've at least thought through how you want to approach the problem.
Team & Mentorship Strategies
Mentor Level Ideas
Expose them to opportunities
Have them document a process as you execute it
Make them red, green, refactor on a ticket

If you have to iterate on a ticket, or get a "changes requested" on GitHub, don't freak out. Start asking yourself and seniors, "How can I make this better?"
Team & Mentorship Strategies
Give them choices
Talk as a team about what you're reading to keep current
Break down tickets thoughtfully to distribute work well across the team members and their skills
Team Level Ideas
Estimate tickets as a team, with the understanding that 3 means different things and time frames to different team members
Talk with your supervisor/mentor about what kinds of tickets you are most interested in pursuing. Ask seniors about their reading sources.
Team & Mentorship Strategies
Office hours
Refer them to someone who has the skills to help them

Team Level Ideas
If your recommended "go to" people aren't answering your questions in a timely manner, they aren't your "go to" people. Pivot.
Team & Mentorship Strategies
Or else...
Tech debt!

Communication

Communication
When they break something

Pair program to fix it
Give them instructions and support while they fix it
Explain to them how you fixed it
It is going to happen. The reactions of those around you will inform how long you'll likely last in this position.
Communication
Fielding Questions
When they are asking a question, listen to the whole question before formulating an answer
If they do not provide this information, ask,
Provide as much context as you can, in an organized fashion. If you are drowning, tell them.
Communication
Figuring out best practices for you both
How do you want to be contacted for questions?
How do they learn?
Clear expectations on both sides

Ask the first question on day one. It will likely prevent some anxiety next week.
Communication
last but not least
FEEDBACK

Keep the feedback loop as small as possible
Keep it constructive and informative
Stop bad habits and grow good ones
If you don't feel you're getting the feedback you'd like, ask for it. Work with your seniors to figure out the best tone for that feedback.
Benefits of having Juniors around
- New devs are a nearly blank canvas
- Bootcamp grads typically bring new libraries and tools with them
- Teaching is the best way to (re)learn/reinforce things you "just know"
- Career-change juniors come with additional skills
- Distribution of work
- Encourages better communication across the whole team
Benefits of having Juniors around


If you grow your junior(s) right it goes from this
to this.

THE END
VALERIE KRAUCUNAS
Slack: @vkraucunas
valeriekraucunas@gmail.com
THANK YOU!
Juniors. Juniors Everywhere.
By Valerie Kraucunas
Juniors. Juniors Everywhere.
- 747