The Non-Definitive Guide To Mentoring Software Engineers
You are someone who would like to mentor someone else in their professional career to help them grow their influence and impact.
More Comprehensive Reference Material
- Mentor’s Guide – Anita Borg Institute for Women in Technology
- Mentee and Protegee’s Guide – Anita Borg Institute for Women in Technology
Benefits Of Mentoring
- You develop a network of enabling and trusting relationships.
- You give yourself an opportunity to reflect on your own practice.
- You get recognition for being a force multiplier.
How to Become a Mentor
- Volunteer To Be A Mentor: If your organization offers a formal program and is looking for mentors, this is the easiest path toward becoming a mentor. Throw your hat in the ring and reach out to the organizer.
- Offer To Mentor Someone: If you’ve already established a relationship with someone on your team or in your organization, you can reach out to them directly and their manager to offer yourself as a mentor.
Being a mentor usually requires you to dedicate a minimum of 6 months to 2 years to your mentee. I’ve even seen 3 to 4 years of commitment. Weekly check-ins are usually a healthy way to see how each other is doing, handle any urgent questions and build up a level of trust and habit.
Start By Building Trust
The first meeting is crucial to the success of the ongoing mentoring relationship. For the mentor, it’s their job to be open to listening, come prepared, be honest, show commitment and most importantly build trust. At this point of the mentor/mentee relationship, the mentee has the most to lose and is the most vulnerable.
I can’t emphasize this enough: build trust first before moving forward on working on goals. If you don’t feel like there is enough commitment, keep on working on the personal relationship so that there is genuine care taken on both sides.
Keep everything confidential, even with the mentee’s manager. If you want to communicate and talk about the mentorship, take the time to ask for permission before disclosing any information to others. Do not even disclose the mentorship unless both parties are in agreement to do so.
Ask For Clarity Of Goals
Usually, a mentee wants to reach a career goal but is unsure about how they can get there. After trust has been built, ask them what they would like to get out of your time together.
Listen And Reflect On The Goals
Listen, don’t talk. Make no judgement on the goals themselves. Stop and listen. This is what I work on for myself. Then after the mentee is done talking, summarize back what you heard.
Your Job As A Mentor Is Simple But Difficult
- Ask the hard questions for the mentee in order to get them to think about difficult subjects. (future blog post coming)
- Teach the framework to think about problems, instead of offering immediate solutions. (future blog post coming)
How To Mentor Software Engineers
With software engineers, start with explaining how the corporate game is played: there are players in the game (peers, product managers, managers, manager’s manager, VP, other more senior people), and there are rules of the game (HR policies on evaluation, software job family and level guides). You want your mentee to learn how the corporate game is played: what are the rules for evaluation? What are the rules for getting promoted. Who is in the room when they are evaluated?
Then, recommend a process of self-evaluation, where the engineer ranks themselves on how they are performing at their current level and at the next level. Software engineers are promoted when they operate at the next level. Have them print out their corporate job definition and spend 2-3 hours going through each of the skills and talk through why they rank themselves at that level.
I also recommend an exercise where they “project” into the future. Ask them to imagine themselves in two years: What are they doing more of, less of? Ask them about the people they are interacting with: How have those interactions shifted over the years? What are they spending their time doing? What will they enjoy doing in two years? What do they not want to be doing?
A Question Worth A Few Weeks Of Time: What Is Your Brand?
Ask this question to get them to explore how they want their co-workers to perceive them as at work. Ask: What do you want to be known for within your organization? Another way to approach this question is to ask them about the top three values they want to hold on to. Values are self-imposed rules that you follow even when nobody is watching.
Questions You Might Ask When Mentoring a Software Engineer
– Do you understand the corporate game? The rules such as job leveling. How the promotion process works? How are in the room making recommendations and making decisions?
– What steps could you take to be a more effective communicator in meetings? For example, you could set goals like preparing ahead for all meetings, or speaking up or ask one question in every meeting. Don’t be afraid to take initiative in a meeting, take notes, or put ideas on the whiteboard.
– What could you do to focus on improving your own iteration speed? Then, how could you help others with theirs?
– How can you make your job obsolete? Can you automate, document, train someone else? This opens up opportunities for you to take on something bigger.
– How can you make your manager’s job super easy? What can you do so that your manager just can’t help but give you a raise, promote you to the next level, or give you a stretch assignment? 1:1’s can be quite productive if you are always asking thoughtful questions.
– What would it mean for you to take on 110% and stretch yourself? There are always breaks where you can work on multiple things at once.
– What can you do to heighten your love for your job? Can you look at it from different perspectives? Can you increase the quality of your work? Can you see your work as part of solving a bigger problem?