How to mentor junior engineers on a highly distributed team?
May 1, 2017 1:27 PM   Subscribe

Conventional wisdom is that entry-level folks are best mentored and leveled up in-person. How does one achieve this on a team of remote engineers?

I have lots of experience managing and mentoring junior devs in in-person environments. But this team is 100% remote. Sure, there are things like ScreenHero, etc, but are they enough? Do you need to mock in-person by being in ScreenHero or skype together most of the day? How do you carve out and assign tasks effectively in this situation? What can the team do to support the new devs' success?
posted by colin_l to Work & Money (1 answer total) 6 users marked this as a favorite
 
I would say it kind of depends on what sort of mentoring the mentee is looking for, how they want to develop. And how many mentees you're talking about mentoring.

I work for a large corporation with a very distributed staff (and I'm in the part of the org that's Far From The Mothership), and I've mentored remotely and been a remote mentee. For one-to-one, the best practices recommended are to set an agenda up front -- what is the mentee looking to get out of the relationship, specifically, since it's aimed at helping them (although as a mentor you also gain expertise) -- so we have them driven primarily by the mentee, they're responsible for articulating their goals but also for scheduling regular meetings, at two-week or monthly intervals, and the mentor is responsible for helping give guidance in the form of chats, recommended readings (if it's a sort of academic goal), helping with code reviews and explaining the reasoning, etc. Mentees do sort of get overwhelmed by daily work though, so sometimes it's helpful to suggest things like, let's meet every X interval and why don't you go put it on our calendars now so we don't forget? in the initial meetup, etc. Basically the format is typically hourlong discussions with casual interactions between (especially if you're helping doing CRs). It might be interesting to do a screen-sharing peer-programming exercise, though that could get kind of demanding on the mentor if the frequency isn't kept in check. We also generally recommend only one or two mentee relationships at a time.

If you're talking about a one-to-many mentoring exercise, we also do weekly "best practices" talks where some senior engineer dives deeply into a topic and talks about how there was a problem -- maybe they had to develop a new framework for automated testing, or for reducing latency in a specific context, or for developing a new accessible system when no one on the team had experience with accessibility, or something -- and they really go into the concepts and how they addressed the issue, always reserving a good portion of the time for Q&A. Because my company is very large the presenters do multiple live sessions (at ass o'clock in the morning, their time, sometimes) but the talks are genuinely good, interesting things. So that may be an option too.

So, if what you're looking at is trying to bring a group of entry-level engineers up to speed, it might be daunting to try to do hourlong sessions one-on-one, but if you did a combination of "every two weeks we do a lunch and learn where I present something" + "let's do a one-on-one half hour every two weeks" (or something appropriate to scale) + "my door is always open to help you out and feel free to bounce your code reviews off me if you want feedback" it might be manageable. It's going to be a large time commitment (and don't forget to take all that context switching into account), but just make sure your boss is aware of the time you're putting into it (and the value s/he's going to get out of all this wonderful free training when her/his whole staff will soon be aware of why we need to make good rollback plans before executing a change! and so on), and both your mentees and you should get good value from the exercise. And....block out at least one solid afternoon on your calendar to concentrate on your own projects, with no interruptions, before you start soliciting meeting invites. Ask me how I know. :)
posted by sldownard at 2:24 PM on May 1, 2017 [2 favorites]


« Older Fitness challenge team name?   |   Learning to wait Newer »
This thread is closed to new comments.