How to Onboard a New Developer
How Important is Employee Onboarding?
Companies lose 25% of their employees in the first year, and all too often due to faulty employee onboarding processes.
Many employees are not fully productive for the first 8 months of employment.
First Impressions are Lasting
Similar to first impressions of people, what your organization does in those first few days and weeks:
- Sets expectations of what the new developer can expect from your company.
- Sets expectations of what you expect from your new developer.
- Determines the pace at which the new developer ramps up and begins meaningfully contributing.
When onboarding goes well, you’re more likely to retain the talent you brought in and develop an effective, fruitful working relationship. Inefficient or ineffective onboarding, however, can cost you time, money, and perhaps even your new team member.
We took our own experiences in software companies (from small startups to huge enterprise software providers) and talked to some trusted tech companies to create a guide to successfully onboarding developers. At the end, you’ll find a checklist template that you can use to make the routine, well…routine.
Be Ready for Your Team Member
Onboarding begins before their first day.
It sounds more simple than it is, but have all the equipment a developer will need ready to go when they walk in for their first day. Even if your company doesn’t have assigned offices or desks, designate a space for the new developer to start on the first day. This provides a bare minimum physical anchor for them in the midst of all the new information and people they’re likely to encounter that first day.
On the first day at CareZone, a company that builds software to make it easier to manage a family’s healthcare, “Everyone has a new computer, stand up desk, and whatever technical equipment they require to get their work done,” said office manager Annabelle Larner.
Beyond physical equipment, there’s also software and account access to consider.
“Make sure they have access to all important accounts on day one (email, Slack, GitHub, etc.),” said Max Lynch, co-founder of Ionic, a framework for building mobile apps with web technologies. Max also recommended that companies have the new computer setup and ready to go, or that companies at least communicate clear expectations about the minimum requirements for apps that need to be installed on the computer before letting the new developer set up their computer.
Make sure they have access to all important accounts on day one (email, Slack, GitHub, etc.),” said Max Lynch
Provide Resources that Aid in Onboarding
Developers (or any team members) don’t just walk into your office and immediately pick up on the processes, values, and ways of your team. It’s up to you to teach them, and having a standard set of resources can help you streamline the information-based components of onboarding.
Helpful resources include:
- A wiki that explains a team’s tools and internal processes. Make sure it’s up to date!
- A recommended reading list of books that have influenced the team’s values and methodology, such as books on agile programming, etc.
- An archive of blog posts by company founders that explain their philosophy and values.
Once a new team member arrives, many companies also provide a mentor or buddy to help new team members get acclimated. “It’s hard to just throw a dev to the wolves,” said Max. “You need another dev/project manager guiding them.”
It’s important that the person acting as a mentor know what their responsibilities are so they’re prepared. Are they the one to introduce the new team member to the rest of the team and show them around the office? Are they simply available for questions? Agree on the purpose and scope of the system and communicate those expectations to both the team and the new team member.
Set Reasonable Expectations
“Failure is okay and should be expected,” said Steve Faulkner, co-founder of Murfie, a marketplace for music collectors. “Management should expect that a dev’s first few weeks or months will be include some steps back rather than forward. It important to be okay with this, communicate it to the dev, and really mean it.”
Faulkner recommends that companies:
- Give new developers small projects that they can be successful on — quickly — to create early successes and encouragement. Even if a tenured developer can do the project more quickly, focus less on turnaround time, and more on making the new developer feel comfortable and valuable.
- Set expectations about the length of onboarding time, which depends on the previous experience of the developer, and adjust expectations as necessary.
“Give developers small projects they can be successful on — quickly — to create early successes” says Murfie’s Steve Faulkner
Max of Ionic also emphasized the importance of giving new developers a safe place to fail. As the developers start on small projects, “Push them to commit and ship things as quickly as possible, even if they break.”
And pay attention to what they’re good at. If a new developer shows a particular affinity or skill for a certain part of the process or product, help them shape their career trajectory within the company accordingly.
Keep Up the Support
The first few days are important, but as Faulkner noted, onboarding takes time. For senior developers it can be a matter of a few weeks, while for more junior developers it can take four months — or more.
During that time, continue to consciously create a safe, positive, encouraging environment where new team members feel supported and valued. Make sure buddies or mentors are checking in with the new hire and ask for feedback about how the process can be improved for future new hires.
At CareZone, developer lunches are a routine event, conducted via video calls to create a time and space for developers to talk about issues they face and stay in touch.
(Alternatively, or additionally, consider scheduling regular group meetings or video calls between people who haven’t met before to increase interactions, connections, and relationships across the company.)
Making Onboarding a Routine
At large software companies like Epic, onboarding is a formal, regularly recurring program with a lot of training, resources, and structured curriculum. At smaller companies, onboarding can be a more personalized effort based on each new hire (though standard resources will still be helpful!).
Either way, having a standard set of steps helps you spend less time thinking about what you need to do for each new hire and creates a consistent process that you can refine as you expand your team.
Having a documented process also provides the place for feedback on the process and enables iteratively improving the process. One step we like is to have both the new employee and their mentor give feedback on the onboarding process.
We’ve found the following steps to be useful guidelines to shape what happens in that initial period. You can use them as is, or modify the steps and order to your liking!
Before Day One:
- Review internal wikis to ensure all tool and internal process explanations are up to date.
- Prepare physical equipment the developer will need, such as:
- Computer with keyboard, mouse, and additional monitors (ideally, install the necessary apps and environments on the computer so they’re ready to go)
- Desk and chair
- Personal storage space for their belongings
- Create accounts for the developer on any external services, such as:
- Create accounts for the developer on any internal services, such as:
- Company website or blog
- Team wikis
- Send the developer invites to team meetings
- Assign a developer or project manager to guide and mentor the new developer
Day One (and possibly Day Two)
- Gather employee information for payroll and other benefits
- Have the mentor/buddy give a tour of the office
- Introduce the developer to everyone on their team (the whole team, if it’s small, or their specific product team), including remote members, and make sure they know what each person does
- Introduce the developer to any company resources, such as tech support and human resources
- Introduce the developer to daily standups or scrums and explain how to participate
- Take the developer out to lunch with their team (the whole team, if it’s small, or their specific product team) or arrange a team bonding time over video call
(We’ve added this checklist as a template on Manifestly.)
First Few Weeks
- Assign the developer small, manageable projects designed to make them feel comfortable and successful
- Introduce and coach them to get up to speed on the frameworks and tools used in your development process
- Increase the scope and importance of their projects, pushing them to commit and ship
- Schedule a meeting with both the new employee and mentor to review the onboarding process. Have the new employee contribute to improving the onboarding checklist.
Synopsis & More Reading
Because we like automation of routine processes, we recommend using a Manifestly checklist that you run every time you hire a new developer.
What would you add to this list of onboarding steps? What successes and challenges have you found in onboarding new developers or other team members?
How we dramatically improved 18F’s onboarding process in 3 months
The Powerful Way Onboarding Can Encourage Authenticity
Developer Onboarding at Shopify
Quora: What is a Good Onboarding Process
This infographic from www.urbanbound.com further explains the benefits of onboarding.