Drew's Mentoring Maxims
I’ve had some success mentoring folks. I’ve also had some failures! I’m providing them here for anyone interested. They may not work on your machine.
Create a loop
This may sound silly, but if you want to mentor someone, first ensure that they want to be mentored by you. You can do this by offering to start a recurring 1-1, e.g. "Hey, wanna set up a regular 1-1 to talk about work? I like the work you’re doing and I think I can help you have an even bigger impact."
The regular 1-1 is how mentorship happens. It’s also how you build healthy, productive work relationships. If the line between these seems blurry, that’s good! It should be.
Know thy mentee
Your job is to understand their goals, motivations, and strengths. You can’t be their advocate without knowing these things! Ask them explicitly what they are. Check back on this periodically to make sure you understood correctly. Besides, each of these evolve over time.
Believe in them, and make sure they know it
Consider saying something like “I think you can be a great senior engineer because I’ve seen your impact on <specific details here> and I want to help you get there.” Folks I've mentored have told me specifically that this is very impactful, and it makes sense! Software development is full of difficult problems, and persevering is easier when you know you have someone rooting for you.
In addition, part of your job is to make sure their work is visible: to them (sometimes junior folks don’t recognize the value of the work they’re doing!), to their managers, and to the org. I’ve done this both directly by writing to managers, writing shoutouts, etc, and indirectly by teaching them the skill of advocating for themselves and demonstrating the impact of their work.
Rubber Ducks Don’t Quack
This is the hard part. Spend most of your time listening. 80% of the benefit of mentorship is providing a place to talk about problems they’re working on. Ask clarifying questions, but be very slow to provide answers. It’s 1000% more valuable for your mentee to arrive at a solution themselves because you reframed a problem for them and were a good rubber duck than if you quickly provide them with a solution.
No homework
Be cautious about giving unsolicited ideas for work to do or problems to solve. You’ve really got to know your mentee’s motivation, strengths, and goals for this to be successful. The way this goes sideways is that you wind up giving your mentee something that feels like homework; that’s a great way to kill the vibe because they’re gonna think “oh I’ve got a 1-1 with Drew coming up but I haven’t made any progress on reticulating the splines”. To avoid this, I bring up ideas like this once, and never again, so they know our next 1-1 is going to be a clean slate, and if they liked the idea, they’ll be ready to engage with it further. e.g. "Here's an idea, if you find it interesting, let’s explore it, if not, forget I mentioned it"
Create space
If you offer a problem to solve, like identifying a pain point in your codebase that adopting a new pattern would solve, it can be uncomfortable to let the problem live long enough for them to solve it. Discomfort is a good sign that you’re creating space for others to step up and be leaders; it means the problem is real and impactful!
Redirect to your mentee
You’re in too many Slack channels already, and people reach out to you because you’ve demonstrated that you can get shit done. When people reach out to you, redirect them to your capable mentee, give them a warm handoff and provide support when they need it. They probably won’t need it; they just needed to be asked in the first place.
Don’t force it
You may find that you’re not jiving with your mentee. This is normal—different things work for different people and it’s important for you to recognize this since a junior person may feel obligated to meet with someone more senior.
This is one reason it’s helpful to think of mentoring relationships as a temporary state of normal working relationships: you might keep the 1-1 but reduce its frequency and see how things go. Or just provide a graceful exit eg “We’ve been skipping a lot; can we schedule these meetings as they’re needed instead of having a recurring meeting?”
Remember to recognize success!
One reason I’m uneasy about mentorship as a term or even as a formal framing of a work relationship is this: the goal of a mentoring relationship is to end the mentoring relationship (by gradually transforming it into a normal productive working relationship). Framing it too formally can cause you to get in the way of you and your mentee's goals.
The folks who benefit most from mentoring are the same folks who you’d be doing a disservice to by framing them as needing a mentor. They aren’t a person who needs advice. They’re a rocket engine that needs oxygen 🚀
Previous post: How to make a good side project
Next post: Why deadlines are hard (and why forecasts are better)