How to efficiently train junior developers

Peter Simic
Author
11 minutes
Reading time
Managing
Category

Adding a new junior developer to your software team is an exciting experience.

They are just starting their career, so they are likely very enthusiastic about it and can’t wait to learn from you and your senior developers.

However, a new beginning in an unfamiliar environment may feel overwhelming at the same time.

That is why it is important for you to put effort into providing your new junior developer with a positive training experience.

In this article, we are going to share key practices you should implement during the junior developer training in order to ensure the entire process is efficient and productive.

Familiarize them with their work

At many companies, employee onboarding is seen as just a formality.

It is reduced to the paperwork that needs to be filled out before the new hire is provided with a list of tasks to complete.

Quote about the focus of onboarding
Source: Shake

However, going through the processes and filling out the paperwork is not enough to make onboarding successful.

Instead of rushing through it, try to see the onboarding process as an opportunity to make your newest addition to the team feel valued and welcome.

Bug and crash reporting tool for your mobile app.

Something that can help you organize the training process and ensure you cover all relevant topics is employee onboarding software.

Some of the most popular onboarding tools worth looking into include Trainual, Sapling, and monday.com.

Let’s take a look at what your onboarding plan could potentially look like:

Kanbo new employee checklist
Source: Kan0o

As you can see in this template created in KanBo, onboarding isn’t a process that can be completed within a day.

In order to make it efficient and productive, you need to allocate plenty of time for each topic.

You can dedicate the entire first day to paperwork and matters that can be covered fairly briefly.

This would include the company policy, mission and vision, office map, as well as employment and confidentiality agreements.

And after that, you can spend more time introducing your new employee to the IT hardware, the team’s objectives, etc.

Providing the new junior developer with a breakdown of their responsibilities and giving them access to tools they are going to use daily is going to take a bit more time.

However, you can help them become familiar with your processes by giving them access to a single source of truth.

The importance of having a single source of truth
Source: Shake

If you take the time to put yourself in your new junior developer’s shoes, you’ll come to realize that giving them access to resources will not only make it easier for them to learn, but also make them feel more confident and comfortable when executing their first tasks.

Create a development plan

The onboarding phase is the perfect opportunity to let your new junior developer know that you’re interested in seeing them continue to grow and develop professionally.

According to the results of a study conducted by McKinsey, 41% of the participants stated that a lack of career development and advancement was one of the top reasons for quitting their previous job.

Mckinsey reasons for quitting previous jobs
Source: McKinsey

Many people choose to quit their jobs because they feel that their employer doesn’t offer growth opportunities.

This is why you should let your new junior developer know from day one that you are willing to invest in their continuous development through various learning programs.

The findings of a Gallup paper about the importance of having a positive onboarding experience show that there is a strong correlation between a successful onboarding process and having a professional development plan.

Statistic about the importance of professional development
Source: Shake

New hires want to know that there is room for them at your company and that you want them to continue strengthening and expanding their skill set.

Have those conversations early on and let them know that the learning doesn’t end when the onboarding does.

A Twitter user explains:

Tweet about the importance of continuous learning
Source: Twitter

A good way to promote the importance of continuous learning is to create a professional growth and development plan early on, during the training phase.

Sit down with your new junior developer and go over their current skill set to see where they’re at.

Discuss how you can strengthen it and see if the junior has any concerns or areas where they feel like they might need more support.

Rudy Mutter, CTO and co-founder of Yeti, understands that technology is evolving, so he makes it a point to ensure the constant growth of his developers.

At Yeti, continuous learning isn’t only encouraged—it’s part of the team’s daily practices.

Apart from organizing and attending the San Francisco Django meetups and going to conferences, Mutter highlights the importance of independent learning.

He advises encouraging your developers to take free online courses during their working hours in order to self-educate.

Rudy Mutter quote about continuous learning
Source: Shake

Learning isn’t something that’s important only during the training period, and letting your new junior developer know this early on is key.

After all, they want to invest their time and effort into a company that wants to see them grow.

Start them off with basic assignments

Once you’ve given your new hire an overview of the company’s values and mission, as well as granted access to learning materials, it is time for them to move on from theory to practice.

To get your new junior developer started, give them simple, yet meaningful assignments to complete during the training period.

By setting realistic expectations, you’re actually saying: “I understand that it’s going to take you some time to acclimate to your new role, but I want you to know that I believe in your ability to contribute to our goals.”

By putting trust in them to successfully complete the tasks you put in front of them, you are helping them build their confidence. Håkon Hapnes Strand, CTO at Sklls, took to Quora to share his thoughts on the importance of making the new hire feel confident in their skills:

Hakon hapnes strand quote
Source: Quora

Create a list of basic tasks that you are certain the junior developer will be able to complete independently. Carolyn Stransky, journalist and software engineer, suggests having them take on “nice-to-haves (style improvements, micro-interactions, bugs that aren’t critical, etc.) or general improvements (refactoring, accessibility, performance, etc.).”

Completing such tasks will make your new hire feel useful and included.

Additionally, once they realize they’re successfully tackling whatever you put in front of them, they will feel confident and motivated to keep going.

Another Quora user, a senior software engineer, listed the benefits of giving the new junior developer easy bugs to detect and fix.

Here are some of the main ones:

The benefits of giving junior developers easy tasks
Source: Shake

However, be prepared for the fact that not everything is always going to run smoothly.

Given that your new hire is a junior developer, they’ll likely have little to no experience, so errors and failure should be expected.

Steve Faulkner, the co-founder of Murfie, explains:

Steve Faulkner quote on junior developers making mistakes
Source: Shake

Make sure to let your junior developer know that it’s okay to make mistakes.

That will instantly relieve a lot of the pressure they’re likely feeling, but also make them feel more comfortable with coming to you with questions.

When you show your new developer that you believe in their skills, they will also believe in themselves and make sure they are doing their best to exceed your expectations.

Give them regular code reviews

After the new junior developer has had the chance to complete some assignments, they will most likely expect your feedback.

Before they can confidently move on to more complex tasks, they need to know whether they’re doing well so far.

It is advisable to provide them with feedback through regular code reviews.

According to the SmartBear 2020 State of Code Review survey, code review remains the number one way to improve code quality.

First, let’s take a look at what a code review is.

Code review definition
Source: Shake

When a new junior developer joins your team, it is crucial to make sure they get on the same page regarding the code standards.

If you don’t take the time to do this, those small errors made early on could easily turn into bad habits later down the road.

By implementing regular code reviews all throughout the onboarding process, though, you are setting a standard from day one.

The earlier you tell the junior developer what they’re doing well and what needs to be improved, the easier it will be for them to apply your tips going forward.

Carolyn Stransky, whom we’ve mentioned earlier, shares some tips on how to make the code review worthwhile and productive:

Carolyn Stransky quote about code review
Source: Shake

As you can see, it’s not enough to simply point out what is wrong, but also why.

If you don’t explain why something is wrong, chances are, the developer is going to repeat the mistake because they don’t have a deeper understanding of the core issue.

Take a look at this example of a code review.

Code review good example
Source: Medium

This is the kind of code review comment that is going to be helpful to a junior developer.

It not only respectfully explains that an error was made, but the developer that reviewed the code also offered a potential solution to push the code author in the right direction.

Receiving feedback from the team lead and senior developers can be a valuable learning experience for the new junior developer, so try to make regular code reviews part of your training process.

Pair them up with another developer

While code reviews will certainly help your new developer with the technical side of things, you also want them to become properly integrated into your team.

To help them adjust to the company’s work culture, think about pairing them up with a more experienced developer.

Getting to see how a senior developer tackles their tasks can be an invaluable learning experience for the junior developer that just joined your team.

Giving them access to documentation about the company’s values and mission is going to help, but actually getting to observe day-to-day activities will give them a clearer picture of how your team functions.

For a junior developer, being paired up with a more experienced developer is like having an older sibling.

Knowing that they are being guided by someone that is there to help them along the way can create a sense of relief.

Denis Kostyrko, a Ruby developer, explains the benefits of pairing up junior developers with seniors:

Denis Kostyrko quote on mentoring
Source: Shake

Through mentorship, your new developer won’t only get support throughout the entire onboarding process, but they will also get some real-life coding experience and learn how to do their job more quickly.

After all, learning how something works in theory won’t mean much without proper practice.

However, take into account that mentoring refers to more than just shadowing the senior developer or pair programming.

It is also very beneficial for adopting the company culture and feeling like part of the team.

Gergely Orosz, the author of the Pragmatic Engineer blog, spoke to some developers in his network about the value of mentorship.

Here is what one mentee had to say about their experience:

Mentee quote about the value of mentorship
Source: Shake

Although the mentor you assign to the new junior developer should primarily focus on helping them adopt your team’s standards and practices, providing encouragement is just as important.

During the training period, Orosz explains, the new developer might feel like an imposter.

However, a mentor that is supportive and welcoming can make the junior developer feel comfortable in a new, unfamiliar environment.

When there is a good support system in place from day one, the junior is likely to adapt more quickly and feel confident when completing their tasks.

Conclusion

The training period is going to be both exciting and overwhelming for the junior developer joining your team.

However, if you take the time to structure it well, it is likely to become a valuable experience for them.

During the onboarding phase, make sure to provide your new team member with access to all of the resources they will need to do their best work.

Show them that you believe in them by offering continuous learning opportunities and assigning them less complex tasks that will boost their confidence.

Lastly, don’t forget about the social aspect. Pair them up with a senior developer that will review their work and offer the support they will need throughout this journey.

About Shake

Shake is a bug and crash reporting tool for mobile apps. It was founded in 2019 with the mission to help app developers spend less time on debugging and manual overhead — and growing daily since thanks to a small and dedicated team of geeks based in the EU.

Meet your favorite bug and crash reporting tool.

Add to app in minutes

Doesn’t affect app speed

GDPR & CCPA compliant