Starting a Personal Mentoring Program at Work
21 June, 2020
As a senior engineer, you are expected to help mentor more junior people. No one, however, teaches you how to do it. When you become a senior team member, junior engineers on your team are typically assigned to you for mentoring, and you usually help them within the context of the team, so at least the scope and people are clear. As a Principal Engineer I was not working on a specific team, but technically leading multiple teams. This meant I had to identify the people to mentor from various teams and figure out how to help them grow even when I might not have worked on their specific team or project.
When I became a Principal Engineer at Auth0 I fortunately already knew many people across many teams. To start, I picked two engineers from teams with whom I’d worked in the past since I was already fairly familiar with the problems they were likely encountering. I scheduled meetings with them every week for an hour to discuss their problems. I focused on the specific problems they were having first, not career aspirations, or (like a manager might do in a 1:1) happiness at work. Less experienced engineers would usually share a technical problem, while more experienced engineers would raise issues revolving around influencing, collaborating, and interacting with other people or teams.
Soon I was able to classify my mentoring based on three types of conversations I was having:
A concrete, day-to-day topic. I need your help with this particular problem I’m having. While the problem could be both technical and non-technical it was nevertheless always very concrete.
A specific, but more general topic. I am curious to learn more about how service X works or I would like to learn more about distributed systems. The mentee's interest in the topic not necessarily correlated with any particular project they were working on.
A general career council/advise. I want to grow in my career -- what should I do? I would share tips and advice on how to move up the career ladder, cultivate your skills and competencies, etc.
After my initial efforts to become a mentor, I realized the full potential of establishing a more formal personal mentoring program within my company. I understood the importance of long-term mentoring and sometimes encouraged for more lasting relationships. Every quarter I would determine how much time, depending on other projects, I would have available for mentoring. Then I would target potential mentees by keeping my internal network updated and "keeping an ear to the ground". Once I would identify people who I thought would benefit from my help, the initiative would be on me to approach them directly and offer to mentor them. Also, I would leave a few briefer (half an hour) slots for some short-term on-demand mentoring. Once the logistics were arranged, we could start with the sessions. The problems I have addressed in the past were either related to the specific problems within our company (how to improve incident response within our company) or to broader topics applicable across the industry (making distributed systems more reliable).
If someone aspired to learn more about a general topic, I would encourage them to research the topic in advance and come with questions before our first session. During our first session, I would try to set up the expectations and identify their knowledge gaps. Later, I would share a list of things that could help them improve and help them make priorities. We would also share books, articles, online content, etc. and discuss our readings of the previous week as we would be branching out to more specific issues and getting back to the original problem. If the person was more concerned about the specific project I would try to act as an advisor for that specific project. We would do weekly updates on the project and our discussion would usually have two aspects: technical and social (e.g. did you know that this or that person worked on a similar project before?).
- Sometimes people come to you for mentoring and they don’t know what they want to learn. They might approach you asking to help them figure out "how to turn the oven on", but what they really want is to be able to do bake cakes. In those cases, it is essential to yes the first session to understand what the mentee is looking to learn and agree on it with them.
- Identify early in a mentoring session, which of the three types of conversations the session is starting off to be. Know that it might change over the course of the session as you and the mentee talk more.
- It is very important to be prepared for every single session. If a person asks you about a specific project or topic and if you, time after time, fail to provide them with a good answer, you are probably not a good mentoring match. In that case, I would recommend my mentee to look for another mentor that can help them more.
- Determining your mentoring time capacity in advance is very important. Every quarter I assess how much time I have available considering how many projects I am a part of, and I determine my "mentoring budget". How many people I mentor that quarter and how often we meet is a consequence of that budget.
- Keep your internal/company network up-to-date. Know what is happening across the company, what new big projects are starting, what new senior engineers have been hired, etc. This helps you figure out who you should be helping, and you can reach out to those people to mentor them. Don't wait for them to reach out to you.
- Generate internal demand for your skills, and knowledge by regularly contributing to internal blogs, discussions, presentations, etc. This makes it more likely that people will be excited when you reach out to mentor them and that more people will reach out to chat with you.
Marian Kamenistak, VP of Engineering at Mews, outlines key recommendations and resources to make learning an integral part of the engineering role and knowledge sharing across the company a steady practice.
VP of Engineering at Mews
Sabeen Syed, Senior Engineering Manager at HashiCorp, shares her efforts to single-handedly establish an in-house mentorship program.
Senior Engineering Manager at HashiCorp
Dmitry Nekrasovski, Senior Manager of Product Design at HashiCorp, shares how he helped his design team level up by applying a simple, three-step approach.
Senior Manager, Product Design at HashiCorp
Roy Pereira, CEO at Zoom.ai Inc., shares how to deal with a junior engineer who -- for whatever reason -- is resolute on rewriting the code without a more profound understanding of the implications of their proposal.
CEO at Zoom.ai Inc.
Jack Kora, VP of Engineering at dscout, shares how he helped one of his reports to overcome interpersonal conflict in the workplace and gain confidence.
VP of Engineering at dscout
You're a great engineer.
Become a great engineering leader.
Plato (platohq.com) is the world's biggest mentorship platform for engineering managers & product managers. We've curated a community of mentors who are the tech industry's best engineering & product leaders from companies like Facebook, Lyft, Slack, Airbnb, Gusto, and more.