Explore the most effective ways to attract the best developer talent to your team.
Mentoring is a practice that has proven indispensable in the business world.
It can play a vital role in your company’s economic health. In fact, 92% of small businesses cite mentoring as a key factor in their growth and survival), regardless of industry.
Development agencies are no different. New employees can profit immensely from mentoring, which benefits the whole organization.
Luckily, there are proven practices you can use to mentor your new developers effectively. In this article, we’ll examine why and how to employ them so that you can unlock their full potential.
Table of contents
Get to know your mentee
It would be pretty challenging, if not impossible, to effectively mentor someone you know nothing about. That’s why you should do your homework when approaching a new mentee.
Mentoring can be very rewarding for everyone included—it can steer the career path of a junior developer in the right direction and provide them with invaluable knowledge.
It can also provide the mentor with a feeling of satisfaction and accomplishment in their work.
For that to happen, you should get to know your mentee as much as possible to unlock your relationship’s full potential.
Keep in mind that the more you get to know your mentee, the more efficient you will be with your mentoring.
You’ll know how to talk to them, what advice to give them, how to relate to them about their interest and expectations, which areas of work they excel at, etc.
On the other side of that relationship, with enough effort invested, your mentee will feel that you respect and care for them. That’s especially important for the younger workforce members.
We know that because a survey by the Springtide Research Institute found that 83% of Gen Z’ers (those born between the late 1990s and early 2010s) want their supervisors to care about their life.
Luckily, getting to know your mentee is not that complicated. A good way to kick it off is to set up an introductory meeting. According to Hugo, in broad terms, you should accomplish three things in your first meeting:
- build familiarity and rapport;
- set expectations;
- learn from each other.
Remember, this isn’t a job interview, but a more relaxed occasion to talk about their background, interests, ambitions, and passions. Your goal at this point is to build rapport and find common ground, not assess the developer’s qualifications.
A key topic to address is your expectations from the mentorship.
Ideally, a mentorship should benefit both the mentee and the mentor, so an introductory meeting is a good time and place to feel each other out regarding your expectations and ambitions.
Also, it would be helpful to learn about your mentee’s preferred style of work, so make sure to talk about their working habits.
Every developer has their own way of doing things, and assessing how your mentee will fit in with your company culture is an important part of effective mentorship.
Finally, you can spend some time going over the more specific yet still important details like communication frequency, the mentee’s short-term and long-term goals, and so on. You can find more ideas in the graphic below.
A stronger relationship with your new developer takes the guesswork out of the process, allowing you to mentor them effectively in a way that benefits them, you, and your organization.
Set achievable goals
To have a meaningful and effective mentorship in place, you need to know what you’re working towards with the developer under your wing. In other words, you should set realistic goals.
The keyword here is realistic. There’s nothing wrong with having soaring ambitions, but setting unattainable goals could easily discourage your mentee.
On the other hand, challenging but still achievable goals can do wonders for motivation and performance.
For example, research from Locke and Latham showed that specific and challenging goals are the key to the most effective performance.
Also, goals focused on learning lead to better results than the goals centered on the performance itself.
Taking that into consideration, try to work out some achievable goals with your mentee. Ask them what they want to pursue, where they see themselves in a few months, a year, or more.
As their mentor, you will have a much better understanding of their personal goals that way, and you can then help them adjust those goals to fit your business and needs.
To set up achievable goals, you can try using a method called SMART goals.
As you can see above, SMART is an acronym for specific, measurable, attainable, relevant, and time-based. Setting up goals like that can build a strong foundation for achieving them.
Let’s say your new developer has an affinity for coding in Python.
You talked to them, and it’s clear that they want to get better at it, get more experience and rise through the ranks in your company. Let’s see how to turn that goal into a SMART goal.
We need first to be specific and narrow it down. Instead of getting better and rising through the ranks, the more specific goal would be to become a senior Python developer.
The better defined it is, the easier it is to break it down into steps.
The goal also needs to be measurable. How will your mentee know if they’re on the right track to becoming a senior Python developer?
Try to set milestones, such as the number of successful projects needed to advance into a more senior position.
The next step is to determine if the goal is attainable. Is it realistic, and what to do to achieve it? Are all the necessary ingredients already there?
For instance, if your mentee knows that they lack experience in Django and Flask, it would be a good idea to collaborate on projects where they can earn it.
Is the goal relevant to their long-term ambitions, as well as your company mission?
Remember, you should be working towards goals that will benefit both the mentee and your company, so make sure you’re in alignment.
And finally, a SMART goal is time-based. It’s important to set a realistic time frame for achieving it; in our example, it wouldn’t be wise to set up a six-month deadline as that doesn’t constitute enough experience for a senior position.
Effective goal-setting can be immensely important. It gives your mentee an incentive to learn and work towards something palpable, while you as a mentor have a roadmap of their ambitions and know how to steer them toward their goal.
Schedule pair programming
Mentoring through close collaboration is one of the most effective ways to transfer knowledge and, at the same time, build a strong relationship with your new developer. In a nutshell, that’s all that pair programming really is.
One reason it’s so effective is that it gives you, as a mentor, plenty of opportunities to observe how your mentee works.
Having front-row seats when your mentee is programming is beneficial because you can step in when you see fit and offer suggestions right then and there.
That’s a very effective and instant form of mentorship.
On the other hand, since you’re working together, your mentee has the opportunity to see you in action as well.
You can therefore show them your process, offer some advice, and they get to see a more experienced programmer in their element right beside them—without a doubt, a worthy experience for every junior programmer.
Besides that, pair programming allows your mentee to make mistakes and learn from them, which is more beneficial than you may realize. Numerous studies have shown that making mistakes is a powerful way to learn.
For instance, research by Kornell showed that people remember things significantly better if they get it wrong the first time and correct their mistake, as opposed to being given the answer and told to memorize it.
Therefore, when doing pair programming, you should try not to interfere too much and let your mentee make mistakes while guiding them to a solution.
A good time to schedule pair programming can be as early as their first few days in your organization—during the onboarding phase.
Introducing the new developer to the processes and rules of their new workplace with a hands-on approach is a very effective way to begin a mentorship.
Even though the onboarding phase mostly lasts only for about a month, the mentor can share valuable information and experiences with the mentee and help them have a flying start.
Of course, you can schedule pair programming at any time during the mentorship. For instance, Selleo has a mentorship program in which they schedule pair programming every month.
For example, in the final month, a mentee takes part in a project with their mentor and five other developers.
The point is that there’s no bad time to mentor your junior developer with a hands-on approach like pair programming.
And the data confirms that. Cockburn and Williams researched the costs and benefits of pair programming, and they found that the work takes about 15% more time than individual programming, but the benefits are considerable.
As you can see above, taking the time to make pair programming a part of your mentorship program can improve almost every aspect of development.
Pair programming is a practice that you should seriously consider.
The benefits are numerous, as we’ve discussed in this section, and the drawbacks are minor by comparison; if you’re looking for ways to mentor effectively, pair programming can be a crucial tool in your bag.
Monitor their progress
Monitoring the progress of your new developers is a vital part of mentoring them effectively—if you’re not keeping an eye on them, the whole mentoring process could go awry.
The important reason why you should keep an eye on your mentee’s progress is quite obvious—to assess the progress they’re making in their work.
If you leave your mentee to their own devices, several things could go wrong. They could adopt inefficient working practices, get stuck on a project with no one to turn to, or simply feel discouraged and off-track.
In other words, without monitoring your mentee, you can undo much of the relationship you’ve built and slow down their progress.
In addition to checking the progress of your new developer, this is also a good opportunity to provide some much-needed feedback, as well as give answers to any questions they may have.
However, monitoring their progress doesn’t mean hovering over them while they’re asking themselves if they are doing well or messing up—it’s a two-way street of open and constructive communication.
Michigan State University summed up the tips for communication between a mentor and a mentee, which you can see below.
Of course, by monitoring their progress, you have a greater chance of course-correcting your developers if necessary.
For example, suppose they’re not as efficient at writing code as they could be. In that case, it’s easier to correct them earlier during a regular check-in than to see that they’ve written 400 lines of redundant code when the project is already over.
If you’re wondering how to monitor your mentee’s progress effectively, you can try to schedule regular check-ins with them.
You can do that by purposely setting aside some time for meetings in your schedule. It could be once every week, every two weeks, or whenever works for you and your mentee, as long as it’s regular and reasonably frequent.
Keep in mind that you don’t have to wait to meet in person if the situation doesn’t allow it. Even a call or a session on Slack is way better than not checking in at all.
Also, part of monitoring the progress of your new developer is assessing if their skills have improved. You can do that effectively by assigning them challenging but achievable projects.
For example, if you’re developing a chat app, you can assign your mentee to some socket programming in Django, since they identified it during their SMART goal setting as an area they would like to improve in.
By regularly checking in with them, you can monitor their progress and jump in with some help or advice, if necessary.
Monitoring your mentee’s progress is one of the key factors in effective mentoring.
The job of a mentor doesn’t end with introducing the new developer to the company and their tasks; they should remain nearby and ensure that their mentee’s progress is steady and moving in the right direction.
Effectively mentoring your new developers should be one of your development company’s priorities.
It will get your new developers up to speed with the work culture and the demands of their new workplace and provide them with the opportunity to learn and improve.
Also, it will boost your senior developers’ confidence, satisfaction, and sense of responsibility.
Using the practices we’ve mentioned in this article, you can make mentoring a systemic, thought-out process that will consistently deliver results—a win-win-win situation for the mentee, the mentor, and the company.