Mentorship is a rewarding experience that can drive professional and personal growth for both mentor and mentee. As we all work from home without knowing when we will meet again, building on these precious connections is more important now than ever before. In this post, we share practical tips to help you enhance your mentoring relationship and accelerate your mentee’s development both in and out of the office.
Mentorship can play a pivotal role in the success of a developer’s career. It’s not easy for newcomers to navigate the software industry, and pairing an early-stage developer with an experienced advisor can accelerate their professional growth, expand their network, and acclimatize them to the organization’s workplace culture.
Within the Adobe Experience Platform mentoring program, we understand that mentors can guide, inspire, and empower developers to reach their full potential, which in turn brings greater success to the organization. Leading an effective mentorship, however, is easier said than done and the lack of guidelines can deter potential mentors from forming these valuable relationships.
In this post, we draw from our own mentoring experience to share some simple but valuable tips and recommendations that can help you enhance your mentoring relationship, bring your mentee closer to achieving their goals, and thrive in your own career.
Why mentorship matters
Over 30 years of research have established the value of mentorship in promoting ongoing learning and professional growth for both mentees and mentors. For one, mentorship allows a budding developer to leverage the expertise of someone who can do the following:
Share their knowledge, skills and life experiences
Listen, provide guidance, advice and constructive feedback
Act as a positive role model and offer encouragement
Provide insight into corporate culture
Guide on networking and offer networking opportunities
Studies have repeatedly shown that contributions like these result in mentees experiencing improved career outcomes, a higher level of engagement and commitment, along with a stronger sense of inclusion and belonging within the organization.
As for mentors, employees who take this role report improved leadership and communication skills, higher job satisfaction, greater career success, and perceived reinforcement of their own knowledge.
It’s important to note that a mentor-mentee relationship is a choice that requires mutual effort and commitment. Even though mentoring isn’t your full-time job, the rewards of this jointly beneficial partnership more than compensate for the effort.
Five tips to successful mentorship
The hardest part of being a mentor is knowing where to start. These five guidelines will put you on track to guide, nurture, and inspire your mentee.
Get to know them
Mentorship is an ongoing relationship between two people, and as with all relationships, the best way to break the ice is to get to know each other. Create a friendly connection by asking questions about their passions, interests, and personal goals to find common ground. Also, talk about your relatable experiences as an amateur developer to give them context on what you can give them first-hand advice on.
Be curious (but not invasive) and practice active listening to build trust and rapport. This is your chance to portray yourself as a counselor, confidant, and someone they can bounce their ideas off of without judgment.
A good way to bring you closer together and become more comfortable with each other is through activities, such as 20 questions, grabbing coffee or having lunch together, a game night at work, or anything that feels natural.
Lay the groundwork for the relationship so you both know what to expect. This involves establishing ground rules (e.g. no emails over the weekend) and confidentiality safeguards to avoid derailing the mentorship.
Furthermore, determine how you’ll meet (e.g. Slack, video call, in-person) how often and for how long. Maintaining these expectations rests on how consistent you are with them. If you say you’re available on Monday mornings, for example, be sure to honor that commitment so they not only acknowledge this routine but also view you as reliable.
Set achievable goals
What does your mentee hope to achieve six months from now, or even in the next five years? Work with your mentee to create SMART (specific, measurable, action-oriented, realistic, and timely) goals and circle the ones you can realistically help them.
For example, if they want to improve their coding skills, boil that down to specifics like what they want to learn first. If it’s functional programming, you can provide them with resources and introduce them to others on the team who are knowledgeable in functional programming. You can even set up a buddy-system where you both watch tutorials or attend a course together to offset procrastination.
Schedule pair programming
Unlike other professions, mentoring a software developer requires more than just giving advice. Pair programming creates an opportunity to learn from one another just by working together and also helps you better understand their strengths and weaknesses.
Before the session, review the problem they’re hoping to solve and try to understand their approach. This will bring clarity to the session and put you in a better position to offer feedback and suggestions — even if it’s just a new keyboard shortcut that will save them time.
During pair programming, take turns on the keyboard but let your mentee do most of the driving. The goal is to help them understand how to solve the problem, and people do this better through hands-on practice.
Lastly, give them honest and open feedback, but always allow them to arrive at their own conclusions before stepping in with your own. You may even find yourself learning something from them.
Stay in touch
It’s crucial that you regularly check in with your mentee to keep tabs on their progress. Letting the relationship go stale can undo all the progress you made to establish a bond in step one, and they’ll be less likely to reach out when they need help.
As a mentor, make a point to schedule routine check-ins in your calendar. Whether it is an in-person meeting or a simple Slack message make time to ask them what they are working on and if they have any obstacles. To make a mentor-mentee relationship work, it’s essential that you make time for one another.
Figure 1: Yan Li (right) during a regular check-in with mentee Jimmy Kang (left).
Navigating different mentee scenarios
Mentorship has no one-fits-all method. Each mentee has their own personality and learning style that defines how compatible you’ll be. Becoming familiar with the different mentee archetypes and adjusting your approach accordingly can vastly improve your mentoring relationships.
Scenario: Your mentee has been stuck on a project for months but they’re making minimal progress. Most of their time is spent digging themselves out of rabbit holes and they’re losing motivation in their work. When they talk to you, they only express their frustrations and you have little context on the project itself, making it difficult to actually help them.
As their mentor, your main goal here is to jumpstart their motivation and inspire them to keep working toward their goals. Here are a few ways you can do this:
Make bite-sized goals: Break their problem down into small, achievable tasks to make it easier for them to make headway. Having consistent wins along the way will also help build their confidence to solve the larger problem.
Try pair programming: Schedule frequent pair programming sessions with them to get a complete picture of their project and obstacles. You have likely faced the same problems before.
Remove major blockers: If they’re completely lost on a complex problem and the project is long-term, it’s okay to step in and help them solve it. Unblocking them will allow them to feel progression and regain their motivation.
Scenario: Your mentee has just begun and is incredibly excited. They asked you for advice on a problem and you gladly recommended an approach, but when they opened their first pull request for code review, they apparently went in an entirely different direction. Although aside from redundancies and ~500 lines of code, their approach technically solves the problem.
In this case, the code is not the real issue. There’s nothing wrong with taking an approach that differs from your original advice. The snag is that they might have misunderstood your feedback or are not actually learning from you at all. To ensure you’re fulfilling your role as a mentor, here’s what you can do:
Provide constructive feedback: Acknowledge the effort they put in and gently ask about their approach. Encourage their curiosity about alternative approaches to specific parts of the code and support your feedback with documentation, credible articles, or even anecdotes about a past project.
Offer to help them practice: Again, pair programming is a great learning opportunity for both you and your mentee. Once you’ve left your feedback, offer to pair program with them so they can learn more about it. This will also give you a window into their thought process as they code.
Scenario: Your mentee is quiet. They seem to prefer working in a silo and rarely reach out — if ever. But their code is well-written so you’re not sure how you can help.
As a mentor, this scenario can almost make you feel irrelevant. Aside from what they tell you at standup, you’re mostly in the dark. Introverts aren’t great communicators and their struggles are likely happening behind the scenes, so here are two ways you can coax them into including you:
Take the initiative: Introverts find it difficult to reach out without feeling like they’re bothering the other person. You may also feel this way as an introvert yourself, but unless you make the effort to chat or pair program to find out what their struggles are, you will lose them.
Keep it casual: To encourage open and honest conversations from an introvert, stay within their comfort zone. For example, use Slack to check in to relieve the pressure of holding an in-person conversation. Introverts can be quite expressive and outgoing once they get comfortable with someone, so do what makes them feel most at ease and make a conscious effort to regularly re-connect.
Scenario: Your mentee likes to blame others for things outside their control, and sometimes, for their own mistakes. Their work is great, but they always seem to be “the victim” in every situation. For instance, they once merged code that broke the master branch, but because someone else merged before them, your mentee immediately blamed them. As they refuse to accept responsibility for breaking the build, it’s tough to advise them so that it doesn’t happen again.
This is a particularly difficult mentee to navigate. They don’t own up to their mistakes and since you’re not their boss or parent, it’s not your place to point out their personal faults. Keep in mind that blaming is often a defense mechanism. Your mentee may be a perfectionist or feel insecure about their abilities, so they point the finger to distance themselves from their own shortcomings.
Here are a few ways to handle this tricky situation:
Redirect the conversation: Don’t let the conversation become an endless blame game. Gently redirect their assumptions toward the actual problem, which in this case is that the build is broken.
Fix the problem with them: Pair with them to point out what caused the problem and help them learn from it. Make sure to frame your explanations so that they don’t feel attacked. Reassure them that mistakes are inevitable — in fact, making mistakes and then correcting them is proven to be a highly effective approach to learning.
Effective mentorship is an ongoing learning process
While this post offers many tips and suggestions to become a positive influence in your mentee’s career, every mentorship dynamic is unique and there is still much to learn. There is no one-size-fits-all approach and the most effective method is often to dive in and tweak your approach as you go.
Although no matter what mentee scenario you find yourself in, the key will always be to take a personal interest in the relationship and make time for them. Think of all the people who have made an impact on your own career and aim to embody the role model you wish you had as an early-stage developer yourself.
At Adobe Experience Platform, we have seen first-hand how mentoring can positively shape a developer’s career and greatly enhance their prospects. As a result, we are constantly developing and refining our approach and seek to further expand our mentorship program, so that both entry-level and senior-level employees can take an active role in their own professional development. We hope the guidelines in the post have inspired you to do the same.