12/14/2018 - 6:36 PM

Mentoring Tips

via @rob_rix (

Mentoring is challenging. You have to:

  • be mindful of the power gradient between yourself and your mentee;
  • be mindful of your mentee’s current level of understanding;
  • provide context around why, and not just what things are done;
  • come up with explanations on the fly;
  • let your mentee make mistakes so they can learn to diagnose & recover from them;
  • give them challenges that are just outside their current reach;
  • make a psychologically safe environment for them to be wrong;
  • gently explore their decisions & understanding via questions;
  • explain how you think about the thing they’re trying to do;
  • therefore, be self-aware w.r.t. your own processes;
  • be mindful that not all mentees are the same;
  • be mindful that everyone has different circumstances;
  • be mindful that everyone has off days;
  • never hoard knowledge;
  • let them encounter problems, even steer them toward problems, for which you can help them derive the solution, so they really understand why e.g. best practices are thus;
  • clearly distinguish between opinion, habit, & observable phenomena;
  • be willing to retread ground you’ve covered as many times as it takes;
  • be mindful that you have off days, too;
  • be honest and upfront when you don’t know something, & search for an answer together;
  • recognize mentorship as servant leadership, and never ego-stroking;
  • keep an eye on your own progress learning to mentor;
  • be honest and upfront about your own mistakes in mentoring, and take the lesson to heart;
  • remember that the goal is your mentee’s competency and confidence, and not your own;
  • and … just, so much more.

Maybe the most important thing, tho, is to recognize that you have a lot to learn, too, and some of it you will definitely learn from your mentee.

I’ve occasionally compared my own experience working in software to recording a studio album, vs. recording a live album — it can be a solitary activity, and you can apply an arbitrary degree of polish before sharing with others. This can be a defensive strategy against criticism.

Mentorship, by contrast, is inherently performative. It will be imperfect. It will be messy.

But it can be so valuable, and so rewarding.

Embrace the messiness.

Additions via @aymannadeem (

This is an amazing thread! I have a few things to add:

  1. The goal of mentorship is to try and eventually close the power differential by some amount, not to trap someone in a state of being a perpetual “mentee” to you.
  2. Leave breadcrumbs via asynchronous communication for the mentee to go back and reference on their own time; our brains are forgetful and we need systems to help us recover what we learned.
  3. Give them tools to build momentum. Familiarity with mechanics (ex., scripts, commands, the REPL, keyboard shortcuts etc.) creates the muscle memory required to navigate the problem space, which is just as vital as the deeper conceptual knowledge. (...think of this as shipping your mentee’s “MVP skills” so they can feel empowered to contribute without being perfect.)
  4. Help them focus. Frequent context-switching can feel taxing & work against the goal of reinforcing meaningful understanding. Constantly adapting to new, disconnected challenges in an already foreign domain is typically harder than focusing on one thing and radiating outward.
  5. Be focused to help them focus. A clear internal understanding of your own goals allows you to transfer meta-information that is more signal than noise.
  6. Help them prioritize. Sequence learning with pragmatic boundaries. This constrains the pursuit of infinite, fruitless rabbit-holes that can discourage and wear down the mentee’s confidence.
  7. Eliminate ambiguity by setting clear expectations. Explicitly identify tasks for them to do (and clarify what you will not do). They should feel like a budding contributor and not just an audience of your craft. (otherwise, they’ll burn energy figuring out how to appropriately carve their space into your world, without having the awareness to know how).
  8. Master the careful art of redirecting them while encouraging them (@rob_rix is pro at this).
  9. Help them build uncertainty tolerance for not immediately understanding something that takes years to build up to.
  10. After a task, project or pairing session, ask them what they would have done differently to expedite their learning. This will encourage them to reflect, gain meta-awareness about how they best learn and iterate for future work.