How to Self-Mentor

Over the years, I’ve often found myself wishing for a mentor, but have only had a proper mentor twice (both were senior co-workers). As I got started in developer relations, I again felt like I needed one, but I really had no options for that being remote and mostly autonomous (at the time, my job is a lot more collaborative now). Instead of throwing my hands up and hoping for the best, I decided to break down why I was feeling that way and think of creative ways to get similar results.

Let me share with you what I’ve learned.

Why We Want a Mentor

Why is it that we want a mentor? What’s the outcome we’re looking for? For me, it’s usually some combination of the following:

On top of that, I’m also feeling so overwhelmed that I don’t want to dig in and do the work required to research these answers myself. In short, I’m looking for a silver bullet in human form. No, not Martin Short in Arrested Development.

Martin Short in Arrested Development.

Is that you, too? Often we’re looking for some mythical senior developer or lead architect somewhere to tell us the one thing we need to learn or build that’s going to rocket us to a FAANG job (Facebook, Amazon, Apple, Netflix, Google), a more senior position, or Twitch stardom. Those things don’t happen in one fell swoop, though. They happen over years of focused effort.

So, on a deeper level, what are we looking for when we want a mentor? We generally want:

Is there a way we can achieve those same results without having one single mentor carrying the burden?

How to Self-Mentor

To self-mentor, we basically need find suitable replacements in all four areas. Here are some things that have been helping me in each of those areas.

Direction

Figuring out the direction you want to go, and whether it’s the right one, is a little bit of art and a little bit of science. There are a few different sources for this you can use:

Quality Control

This is probably the trickiest of the group because tech is always changing. You’ll need to “triangulate” a few different sources as you work through this.

Accountability

Here are four different places you can find accountability:

  1. Individual accountability: find a friend and commit to each other to do something. Start with short, small commitments (e.g. a small project in a week). It’s like a gym buddy, but for code. An excellent medium for this is Twitch. Live stream building a project together!
  2. Learning in public: Writing out what you’re learning about doubles as a means of accountability. This is even more true if you commit to a regular cadence. Pro tip on that: give yourself an end goal. For example, “Write lessons I learned studying JavaScript every Friday for four weeks” instead of “Write every week about JavaScript lessons.” You’re much more likely to stick something with a hard stop. You can always start another round!
  3. Group challenges/learning cohorts: There are various groups challenges that you can get involved with. For example, hashtags like #100DaysOfCode and study groups for things like JavaScript30. There are also groups cropping up as “learning cohorts,” which are kind of like book clubs for coding.
  4. Paying a consultant: This isn’t always an option, but sometimes the shortest path between two points is to just pay someone to help. A few years ago I hurt my back. I had to do a bunch of tedious exercises to get better. Do you think I’d have done them if I wasn’t paying a physical therapist to pester me? Heck no! You can often just offer to pay someone for an hour of their time to pair up with you on something. It might feel expensive, but it also might save you tens or hundreds of hours.

Overall, remember: deadlines and dollars get stuff done!

Encouragement

Don’t neglect this part of the process. We all need support! Sometimes we just need someone to let us know we’re doing alright. Heck, I know I do. We’re also notoriously bad at “feeling” our own progress. Here are some ideas on where to go:

Endless Mentors

Use the framework I’ve laid out above to build yourself a system to learn and improve. This unlocks basically an endless list of mentors by proxy. Rather than seeking out the One True Mentor, figure out who you want to be like and observe them. What are they doing well? What is driving their success? You can have endless mentors if you know what to look for and how to harness those observations into action.

Warning: implement this slowly!

If you’ve read this far and feel overwhelmed, don’t worry. That’s normal. Remember: building a system like this doesn’t happen overnight. Take it one step at a time. First pick the area that you feel like are feeling the most pain. Are you feeling lost? Are you frustrated by your code quality? Are you never able to finish projects? Are you feeling down and ready to give up? Work on these one at a time and don’t get discouraged if the first attempt doesn’t work. Keep at it. Remember: it’s not a failure, it’s a test.

If you found this helpful, hop on the Developer Microskills Newsletter below. This article began its life as an issue!

Project list gathering dust? 👀

Drop me a line below so I can send you the Tiny Experiments framework and worksheet. You'll also join over 2100 other devs and dev advocates on the Developer Microskills newsletter.