Mentoring Engineers as an Individual Contributor
I was estatic when I landed my first engineering job. I worked hard at it for several years, and working one day it occured to me that I had become a “senior engineer”. On the path to becoming senior, I found myself spending increasing portions of my time mentoring junior engineers. Mentoring takes many forms - sometimes its formal 1x1’s, sometimes a quick pair programming session, and other times just a casual conversation.
At some point, I realized I had been mentoring new engineers a lot. It didn’t just happen by chance - I was really enjoying it. I love helping people, and seeing them grow. However I’m not a manager, and have no plans to be one.
Being an IC and mentoring others is the perfect situation for me. I get the joy of helping others, while not having to deal with all the trouble managing brings, and still having time for my own technical work. Like any skill in life, mentoring is a skill that gets better with both practice and reading theory. As I focused on improving my mentoring abilities, here are few things I’ve found that have helped me be a better mentor.
Default to Sponsorship - Not Giving Advice
Sponsorship is where rather than give advice, you advocate for your mentee. Definetly read Lara Hogan’s writing on the topic as its completely reframed my approach. You should always prioritize finding opportunities, and gently guiding your mentees into opportunities, over giving them advice. The fastest way for anyone to grow is when they are put in an appropriately challenging situation - it’s your responsibility to curate and guide them into those opportunities. They’ll gain much more confidence getting things done than they ever would hearing you talk.
Listen more than you speak
The job of a mentor includes giving their mentee advice. Good advice is specific, and oriented to the context of the situation. That’s why having a mentor is so rewarding - you can read all the advice you want on the internet, but most advice won’t be tailored to a mentee’s situation. A good mentor listens and understands a mentees situation, and uses context to give the right advice. So please - if you find yourself talking to much, pause and think of a question to ask your mentee. The more you listen, the more you understand their context, the better advice you will give them.
Make the first move
In m experience, most junior engineers don’t reach out for help nearly as much as they should. Some may not realize that help is an option, or others may be worried about appearing annoying. Whatever their particular reason, as a mentor it’s on you to reach out and offer help. If you meet a new engineer whose struggling on something, schedule a 1x1 with them and listen to what’s going on. Offer to give bootcamp or new college graduates technical practice interviews. Offer to pair with someone who seems stuck on a ticket at work. Worst case they say no - great! They have it handled. More likely, they’ll gladly accept the help.
It’s not about you
The only thing that matters is helping your mentee. This means you will have to be selfless, and optimize for what’s best for them even when it doesn’t involve you. You might not be in the right position to offer advice to your mentee - then it’s your job to help find them a better mentor and back away.
For example - I’m a run of the mill white male in software engineering. When I mentor young women engineers, I make a point to connect them with other woman mentors. I don’t have the perspective they do - but what I can do is connect them with someone who does.
Never stop giving back to beginners
As you get more senior, you tend to mentor those a level below you - engineers who are already good developers, just not at a senior yet. You can guide them well since you were just in that position and the challenges are fresh in your mind. Also as they are past the basics and have moved on to more challenging work, it’s more challenging and rewarding mentoring process for you.
What’s important is to never forget to spend some time helping engineers who are just starting their careers. Although you haven’t been in their shoes for a while, you can still strive to understand their position and guide them. Helping a junior engineer understand a for loop is still incredibly valuable, even if it feels basic!
Pay attention to representation
It’s an unfortunate natural tendency to want to help people who look like you. As an established engineer, it’s your job to help address the problem of underrepresentation in the tech industry. Go out of your way to help mentor people who don’t look like you, and help get them to a level playing field. If you happen to be based in the Boston area, Resilient Coders is an excellent way to help underrepresented engineers get started in the industry.
Don’t forget to be their friend
When mentoring, it can be easy to just focus on discussing your mentees career. Before you know it, you’ve spent months talking through their work and realize you don’t know much about them as a real, non-corporate human being. Spend time getting to know them and becoming friends. It builds trust, and will make sure you stay in touch over the years and get to see them grow.
Be Honest & Vulnerable
Good mentorship is built on trust - and the way to build trust is by being honest with your mentee. As someone who has slowly gotten over Imposter Syndrome, I’m honest with my mentees about how I’ve often felt like I wasn’t a good engineer in the past. By opening up to them, it helps them to feel comfortable sharing any insecurities with me so we can work on addressing them together.
Mentoring others and seeing them grow is incredibly valuable work. It’s also challenging - making this list gave me the opportunity to reflect on what I need to improve on to grow as a mentor. I hope you find as much fulfillment out of mentoring as I do.