1. 9

Throughout my career I’ve done mentorship in an unofficial capacity, usually starting out with “hey can you help me with this technical problem” and sometimes it turns into me being the guy junior devs come to for tricky bugs, sometimes it’s a more comprehensive technical design/workplace issues/career advice kind of outlet. I enjoy being able to help people and in more cynical moments it’s felt like the only thing I do in my job that’s having any kind of positive impact.

Lately though I’ve been thinking that mentoring less experienced devs in whatever company I’m with at the moment is great, but in some sense folks that have gotten through education (be it college or some kind of bootcamp thing) aren’t the people that could benefit from mentorship the most, given they’re already in the industry and often have access to plenty of other forms of membership.

When I was a teenager struggling to stand up a fansite or scratching my head over stack traces I was really lucky to have a technical mentor, just someone I had met on a forum, who took the time now and then to point me in the right direction. They really didn’t invest a ton, just took the time to explain why I didn’t need the latest and greatest stack or a distributed database, explained that the mysterious dollar sign I saw everywhere actually meant “jquery”, stuff like that. But it was amazingly helpful to me and I owe this random person who took some time out of their day to help me now and then for helping me get to where I am. I’d love to be able to pay that forward in some way.

So question here is if any crustaceans have experience with this kind of “pro bono” mentorship, and if so do you find it rewarding? What channels are there for offering this kind of mentorship? I searched around a bit and found plenty of services that seem a lot like paid tutoring, but that’s definitely not what I’m looking for, I never would have had access to something like that when I needed it.

  1. 2

    Depending on where you live, there might be high school or college (2 and 4 year) mentorship programs that you can volunteer at. These programs might require you to visit students at school and to be open to answer questions if they have them (this means that you might need to be available to go during school hours). After school clubs might also be an option if that fits your schedule better.

    College mentorship programs might be more flexible regarding hours as young adults tend to be less restricted by the 8-3 schooling hours. Another benefit of college programs is that you might be able to connect with students with specific interests or backgrounds (like a local robotic program or a more established program like mesa).

    My general advice would be to start from schools and colleges in your area, go over their websites, and see if any club or activity catches your eye, then reach out to its coordinator to see if they are looking for volunteers.

    1. 2

      I’ve volunteered with a local organization called Emerging Leaders for a few years both as a mentor and as an intern supervisor. I do find it rewarding, but it’s very different from the kind of mentorship that happens organically. A couple of key differences:

      1. When you mentor someone organically, you usually already know what they need before you volunteer to help them. When you sign up for a mentorship program, you may be assigned someone you know very little about and spend a lot of time discovering what they need. And it may turn out that, in spite of everyone’s best efforts to make a good match, there’s very little you can do to help them get what they need. Mileage will vary, of course.
      2. Much of what you describe in your on-the-job mentoring actually sounds like coaching. I hadn’t really thought much about the difference between the two until I read this article the other day. Reviewing code and answering technical questions is very different from mentoring. A mentor helps someone figure out who they are and what they want out of programming, helps them set goals, and encourages them to follow through on them. I find mentoring orders of magnitude more challenging than coaching. You have to build mutual trust, and that often takes time. Perhaps this shouldn’t be surprising since human problems are usually more intractable than the technical ones.

      I was surprised to find that one of the more rewarding volunteering activities I’ve experienced with Emerging Leaders has been in mock interviews. We work in a group setting with several recent or soon-to-be graduates. I review their resumes and ask them mock interview questions. So many of these young people are afraid of saying the wrong thing they don’t allow their interests and skills to shine through. They also make small, distracting mistakes that are easy to identify and amend. The process is surprisingly short and, I think, very effective.

      I share your sentiment that helping less experienced programmers is a very rewarding way to pay forward all the moments when I needed help myself. I hope you find what you’re looking for.

      Side bar: I’m very curious about The Recurse Center’s model. Has anyone had any personal experience with them or a group like them?

      1. 2

        I’d just like to say that the #clschool channel that was on freenode and is now on liberachat is a beautiful place where I’ve gotten more moral support than in many of the other places I go to ask questions (to try and avoid unstucking myself - because usually the problem is that you’re lonely not that you don’t know how to debug).

        What I’d really wish for is a real in-person kind of community where people would occasionally take the time to point out some tricks for interacting with a computer and give each other some recognition for their struggles or at least, you know, “share the moment”…

        I know many people would call that a “workplace” or a “university” but so far that is not really my experience with such places. It’s more likely that someone will place a workload on my shoulders that is either make-believe (university) or creating more problems than it is solving (workplace, sometimes it’s not about the specific problem but rather the nature of the company / economy). In either case it is anxiety-inducing and really I have plenty of stuff to work on and basically an infinite roadmap. What I don’t have is (real life) friends, reliable income sources, (real or digital) coworkers or any realistic way to obtain these things without having already (at least partially) succeeded in what I’m trying to do.

        Writing it down like this makes it kind of an absurd complaint but I’d really rather die than “keep up appearances” - the play is over, let’s close the theatre and get to work repairing infrastructure and preparing for the fuckton of things that can and will go wrong in the future. This awkward transition period where we still persist in the delusion that all the arbitragers are doing good in the world while free software is obviously not worth our taxes… it’s coming to an end eventually and if I die first then so be it.

        Edit: I strayed away from the point I initially wanted to discuss, which was all about how it is hard to offer or receive mentorship in our current culture and some anecdotes about personal experience teaching people a bit of CS or math. However I don’t trust myself to write that now because I got a bit angry writing the above.

        1. 2

          have experience with this kind of “pro bono” mentorship, and if so do you find it rewarding?

          Yes, and yes.

          What channels are there for offering this kind of mentorship?

          Afterschool STEM programs in your area (say, FIRST robotics) are always in need of folks to help out.

          IRC, Discord, Slack, or online messageboards (lainchain, /g/ lol) can often be places to help explain the deep bits behind one-off noobie questions, and that often helps everyone. On IRC, just taking the time to ask clarifying questions when somebody needs something is rewarding. One of the cons is that you’ll see a lot of people hop on, extract value in the form of asking a question, and leave forever, which can be draining if you’re looking for a longer relationship.

          Depending on the size of your polity, there’s probably at least one or two groups for programmers or people looking to break into the industry to hang out. Oftentimes, these groups specifically target people from currently underrepresented backgrounds in tech. A con is that you’ll probably run into other well-meaning (probably) techies who will show up in these places and will be overbearing or cringey, and that can interfere with your own efforts. In such cases, I recommend finding zen and sitting in the corner working on your own stuff, and politely and efficiently answering any questions you get posed and then returning to your own work. If you’re helpful, you’ll get a reputation for being a good resource and you won’t be getting high on your own supply when you should be focused on helping people. That approach can also be seen as pretty respectful if you aren’t a normal member of a target demographic.

          1. 2

            Funny coincidence, I was on a forum the other day when a bunch of people started chiming in that they all sort of wanted to try out programming.

            I had been feeling the way you had, and had been considering trying to start a little community where people could find mentors, so I did.

            So far I’ve only posted it there, but we’re up to 4 mentors and 6 folks who are at various points in their learning journey.

            More than happy to have anyone who feels interested in taking part of either side of that bargain join us!

            https://discord.gg/3v3Y28Gh4K