HACKER Q&A
📣 lordofmoria

What’s the most effective developer onboarding you’ve gone through?


My company is planning to do a refresh of our SWE onboarding, and there are so many approaches we could take - I’m looking at this almost from a pedagogical perspective.


  👤 austincheney Accepted Answer ✓
I can’t think of a great software on boarding experience. In fact the quality of onboarding is often inversely proportional to the perceived value/duration of the job, such that a crappy temp job is likely to have excellent onboarding to maximize perceived ROI.

What I have learned from my time in the military is that onboarding is more important than candidate selection. Regardless of onboarding success comes down to personality. The quality of a candidate’s professional experience is more a reflection of that personality than an indication of current technical competence, which is where candidate selection is often severely misunderstood. Provided a properly selected candidate there can be enormous room for positional success if the criteria of success are well defined, documented, and trained. This is where onboarding is important. I have never seen corporate software get this correct even though the same company likely has this mastered in other career fields.

The common expectation is that some other company trained the candidate for you and that they are fully technically competent walking through the door. That is an unrealistic expectation born from poor planning and lazy leaders. The result is beginners that need tremendous hand holding and the bar of acceptance to be continuously lowered or seniors that are everything the company wants except compatibility with people who need too much hand holding.


👤 DarrenDev
I've never had a positive onboarding experience when starting a new job, not from a tech / code base / product perspective at least. That spans 20 years and about 15 companies. I'm currently going through one of the worst I've ever experienced, after starting a new contract 4 weeks ago.

I once had a fairly positive onboarding experience when being assigned to a new project with a new team at one company I'd been with for a few months. That was positive because there was a priority user story assigned to another dev on the team that spanned a two week period pretty much titled "Get Darren up to speed and answer any questions he has." It worked.


👤 dyeje
IME, this works pretty well.

1. Step by step instructions to get the development environment setup. If they run into an issue, update the guide.

2. Deep dive into the product, how the business works, where product is going + why, and how their work impacts all that.

3. Set 30/60/90 day goals.

4. Give them tasks (maybe explicitly make some of them pairing tasks if that is part of your eng culture).

5. Regular check ins (this varies based upon their progress and how much they're reaching out for help on their own, but at least weekly).

6. Have them schedule 30 minute informal chats with everyone they'll be working with on a regular basis.

The idea behind these steps is to give them the tools, context, and support they'll need to be effective then getting out of the way so learning through doing can start as quickly as possible.


👤 treeman79
Pair with others for 3 months.

Take turns driving.