what it is and what it is not, and who does it
What is mentoring
Mentoring is dead simple. Here’s what it is:
Find somebody with experience and / or skills that you don’t have in some area that you would like to get better at.
Explain to them your current situation / difficulties and ask for advice.
Go act on the advice and see how it goes.
Report back and discuss how it went.
Repeat steps 2 - 4 as many times as you want to. Congrats, you are now being mentored.
This framework works well because it is suitable for micro, serial mentorships wherein you meet maybe three times with your mentor and then end the contract, and move on to seeking a mentor in some other area. It is also suitable for long term relationships that span months or years.
Because of this, it is sometimes important to note an omitted step: agree on the terms of your relationship. This doesn’t have to be weird or overly formal. In the Dungeons and Dragons community, we call this having a “Session Zero,” a session before the play sessions begin in which the players all talk about ground rules and expectations.
In the past when I’ve established these temporary kind of mentorships, I’ve usually started with something like the following:
Introduction: Hey, I’m trying to learn more about x, and I know you know a lot about it. Do you mind if we meet for a coffee and I can show you where I’m at, and maybe get some feedback, input, advice from you?
The meeting: do the thing.
Invitation: This has been super helpful! Thank you! I want to go try the things you suggested, and then I’d really like to follow up with you and let you know how it went. Do you mind if we have a few regular check-ins on this? Maybe meet like this every two weeks a couple of times? Would you like to be my x mentor?
Suitable topics for mentoring
In this way, I’ve had plenty of these “flash mentorships,” usually on stuff like interviewing, managing large projects.
I once tried to have somebody mentor me on “Ruby,” but that didn’t go really well because the topic was both too broad and somehow also too narrow. The advice usually amounted to “try writing more Ruby.”
I have found that for learning languages or frameworks with somebody, it’s usually better to just start a little side project together in said language or framework. This can be fun if one person is strong and one person is weak in the technology because it can still allow for some mentoring type interactions while working together. And it can also be fun if both people are weak in the technology. This isn’t mentoring but it is learning together and is a valuable learning experience in which you can share what you learn with each other as you go and kind of mentor each other along the way.
How to find a mentor
Most of the mentoring relationships I’ve had in the past have been with peers and colleagues at work. Because of the amount of time I spend working with them, I get to see actual evidence of their expertise, and also I develop a familiarity with them that makes it easier for me to approach them with questions.
With few exceptions, most attempts at mentoring with a direct supervisor or manager have been unsatisying or unsucessful for me. It might be that, because of the nature of the relationship, it can be difficult for a manager to simply advise without directing. (I must clarify that I’ve had plenty of managers who are wonderful coaches, but I consider that a wholly separate category of relationship.)
That said, you need not look only within your place of work for mentors. In fact, it is a trap to think that you are limited to the official learning and growth opportunities provided through your company’s org chart.
You can also leverage social communities on slack, like the fantastic denverdevs.com. Or on irc, such as at tildeverse.org.
Tangientially related, I’ve also long been a fan of the curiosity conversation as defined by Brian Grazer in A Curious Mind, wherein under the guise of sheer curiosity you arrange a meeting with somebody (usually a stranger) to learn more about their story and what they do.
When I was first getting started in my tech career, I scheduled monthly curiosity conversations with CTOs and VPs of Engineering and Engineering Managers at companies that I was interested in or curious about. I learned that people are very willing to talk about themselves if you ask them questions about themselves. And it is a testament to the community that such seemingly busy and important folks would take the time to have a cup of coffee and a conversation with somebody barely out of their code school bootcamp.
None of those conversations turned into mentorships for me. I got plenty of advice, but rarely reported back on the outcomes of that advice. But I didn’t go into these conversations looking for mentorship. I really did just want to satisfy some curiosity around how this industry works, and how people who are successful in it conduct themselves. But I mention it here, and share my success in arranging these meetings, to say that you really can just cold call people on LinkedIn if you are looking for advice or stoies.