My first day as a junior software engineer was one of the most mentally draining days of my life, and the next three months on the job weren’t much better. I didn’t leave my house other than to go to work or attend a work event. I remember thinking, “What did I sign up for?”
I had been coding since I was twelve, but coding was fun. This was something else. I felt like everyone else in the room was reading Shakespeare and I was trying to get through a copy of Goodnight Moon.
I was the first junior engineer that my company (Ticketfly) hired. Ticketfly had a fantastic attitude about onboarding me, but it was still tough. My mentor built out an incredible Ember.js app where I had to solve small (I sure didn’t think they were small at the time) problems in JavaScript to make the tests pass. After that, I worked on a small app for fun, using the same framework the company used.
Ticketfly made a big investment in my career, and also took a big risk hiring a new junior engineer. It paid off for them–and for me. I stayed with Ticketfly through two acquisitions and was promoted to senior software engineer. Now I’m a senior software engineer at Eventbrite.
With the lack of senior engineers available in the hiring pool, many companies are hiring junior engineers–often recruiting them right out of coding bootcamps or creating apprenticeship programs within the company.
This is a smart strategy for adding talent to an engineering team, but while hiring an experienced or senior engineer immediately adds a contributing member to your team, hiring a junior engineer is a long-term investment.
If a company rushes to hire a junior engineer before determining that they have the support system and resources needed and the senior team members willing to mentor new engineers — plus a realistic timeline for how long it will take before a junior engineer will add value to the team — everyone suffers.
Here are the elements you need to have a solid junior engineering training program at your company:
Mentorship
At Eventbrite, we have outstanding support systems in place for our junior engineers. It starts at an orientation where they’re assigned a ‘buddy’ who helps the new hire with anything from finding their way around the office to helping them set up their dev environment. Eventbrite runs a mentorship program where mentees are matched to a mentor based on what they want to learn. We also host weekly Code Labs where senior engineers teach a new topic each week. The lab is a comfortable environment for the junior to ask questions without feeling incompetent.
Having an open discussion among the engineers who will actually mentor the new hire is vital.
Do you have a knowledgeable engineer willing to take the time to mentor and pair with the new hire? Onboarding and teaching a junior engineer is a huge responsibility. It could take months before they’re fully independent. It’s beneficial to determine whether you can afford to hire someone who might take a while to ramp up.
Expectations
One of the incredible things about my current company is its focus on jumpstarting the careers of junior engineers. Eventbrite has hired more bootcamp graduates from Hackbright (an all women coding bootcamp) than any other company out there.
Some of our junior hires are the best engineers I’ve ever worked with. While each new hire took months to bring up to speed and train, the investment we’ve made in hiring more junior developers has paid off. Most of Eventbrite’s hires are still with the company years later, and are exceptional contributors to the codebase.
Pairing
Having a culture of pairing is a great benefit when hiring a junior engineer. One of the great things for me when I started out my career was that my mentor would pair with me when I really got stuck on an issue, but he also encouraged me to figure things out on my own. It was a great mix because I had support so I wouldn’t feel stressed, but I also was given the independence to learn and grow.
Try assigning an easy task to the junior engineer and ask them to take a stab at it. If they run into problems, try pairing on the problem. Eventbrite buddies have regular check-ins with new hires to make sure things are running smoothly.
We practice driving and navigating pairing at Eventbrite. It helps to keep both members of a pair actively engaged in solving the problem. Based on my experience, it’s useful to hire several junior engineers at a time so they can pair together and support each other. It’s also helpful to the company because you can onboard and train them at the same time.
Training
Eventbrite hosts an incredible training session on React with our principal front-end engineer. The session walks the new hire through building out an application in React and provides solutions in separate branches if they get stuck, so anyone can keep up with the pace. It’s incredibly welcoming and inclusive when they’re just starting out. Could your company create an onboarding program that can help get them up to speed? Most onboarding programs are geared toward engineers with years of experience. This can be frustrating to a junior engineer. One of the great things that Eventbrite does to support junior engineers is to provide a buddy just for setting up their dev environment.
You could also consider finding a training program if your company doesn’t have the resources to create one. One idea is to find a conference that has a few training sessions for your new hire, or ask them to complete an online course during work hours and provide them with assistance if they get stuck. Eventbrite provides Udemy accounts for all employees. I’m constantly taking online courses, and it’s awesome to work at a company that supports continuing your education.
Could your senior engineers create a small app idea for a junior hire to work on in the framework your company uses? My first company provided me with this type of project, and also with mentorship and pairing if I needed it. I didn’t have to jump right into the code and feel pressured to contribute. Creating a small repository of tests that they have to get passing could also help a junior engineer to become comfortable with your stack quickly.
My first company took a chance by hiring a junior engineer and I’ll always appreciate that they made that commitment. While I was their first junior engineer, they had a strategy, realistic expectations, provided me with a strong support system and invested in my learning. That’s what it takes to support a junior engineer that has a shot at becoming an asset to your team.

