Importance of Positive Onboarding Experience for New Developers
The modern workplace is undergoing a revolution. Falling unemployment rates have led to a growing need for employers to put in more work in order to attract top talent. This is especially true in the software development field, where competition for the best candidates can be intense.
As a result, potential candidates for developer roles can often afford to be quite selective in regard to the criteria by which they choose employers. For those in such a position to be picky, more resources are now available than ever before to learn about the company culture and its treatment of employees.
Such information can be gleaned from online reviews posted on websites like Glassdoor or simply by speaking with current or ex-employees. No matter the source of the information, inquiring candidates may be able to gain insights into how the company approaches onboarding a new developer and what past and current employees think about the process.
It can be tempting to simply show new developers to their desks and start assigning projects. However, a well-thought out onboarding process is important for making sure that your new hires get started on the right foot. A positive onboarding experience allows new developers to blend with the company culture and smoothly settle into the responsibilities of their specific position and team. Good engineer onboarding will help new developers get to know the business at an in-depth level and remove any last-minute apprehensions about the company or manager.
Goals of New Hire Onboarding for Developers
The best onboarding experiences drive engineering productivity, boost employee retention, and ensure that new employees blend quickly and painlessly into a company’s existing structure. In fact, statistics show that employers that provide a quality onboarding program experience a 50% boost in their new hire retention rate. At the same time, the onboarding process should enable new hires to feel more connected to a company’s goals and overall vision.
Here are some key objectives that you should have in mind when designing your new developer onboarding process:
1. Familiarize New Hires with Company Processes and Technology
Developer responsibilities can differ greatly between companies, so new hires should be given some time to get familiar with their responsibilities and the tools they will be using to meet them. A common way to help new developers familiarize themselves with company software is to let them experiment in sandbox environments, which lets them create system familiarity in a stress-free context.
Smaller, low-stakes projects are ideal for employers needing to quickly integrate new developers into existing workflows, while also letting them know that they are trusted and valued from day one.
2. Establish Expectations
In a 2016 talk at the Nebraska.Code() event, Sarah Withee addressed the issue of recent graduates not knowing what’s expected of them as they walk in the door at their new jobs. She mentioned a friend who did not understand their responsibilities and was frequently yelled at for not turning in the kind of work expected of them.
As a result, Withee’s friend chose to quit soon after joining. This problem was caused not by an incompetent employee, but by poor onboarding; employees cannot be expected to know what is required of them unless their supervisors clearly communicate it.
Needless to say, best practices will vary from company to company. Proper behavior may seem obvious to long-time employees, but new employees are often unsure how they should operate in their new work environment. A positive onboarding experience should instill new developers with a sense of pride and camaraderie about being part of their new organization.
3. Integrate New Hires into the Workplace Culture
Working in small teams is essential in modern software development and effective teamwork is a skill best developed on the job. New graduates are often accustomed to academic settings that focus only on individual coding work, rather than collaboration.
Given this lack of experience with teamwork, it may not be clear to new hires how their individual work fits in with the big picture. For that reason, it is crucial for developers to gain a thorough understanding of the business model, growth track, history, and future plans of the company.
This ensures that the new employee will be capable of aligning his or her work with the desired business outcomes of the organization and not feel alienated within the workplace.
Strategies for Successful Onboarding
In this section we’ll examine some concrete methods for creating a solid onboarding process or improving existing processes.
1. Provide Clear Documentation
It’s no secret that clear and thorough documentation is necessary to effectively communicate the plans and values of any company. A training manual can serve both new hires and veteran employees alike.
Whether or not they admit it, many employees are hesitant to ask basic questions of their coworkers. Creating clear documentation of company processes and guidelines can go a long way toward preventing misunderstandings and interpersonal issues later on.
In the software development space, such documentation often takes the form of collaborative wikis or cheat sheets covering various internal functions such as HR, payroll, software, and so on.
2. Set Up a Mentor System
Providing peer mentorship to new developers is a great way to facilitate a sense of comfort and belonging. Partnering with experienced employees also allows new hires to receive quality guidance from veterans in their organization and experiment with code in a low-pressure environment.
A new hire’s mentor can review their work, give feedback, and answer any questions they may have. The mentor system also cultivates the development of interpersonal employee relationships, which will increase efficiency and job satisfaction both in the short and long term.
3. Offer High Quality Learning Paths
Rather than overwhelming a new hire with loads of information about company-specific processes on day one, consider instead offering pre-designed learning paths that they can complete on their own time from the comfort of their desk. Such learning paths can help employees choose which skills to prioritize improving while breaking the lessons into smaller, more digestible steps.
A wide array of engaging learning paths will also signal to new developers that the company values their continuing education and skill acquisition beyond whatever specialization they bring at the time of being hired. Learning paths can also be set up to teach new employees about company history and values.
4. Conduct Regular Evaluations
Progress evaluation meetings for new developers should be held regularly and frequently. These meetings create a healthy forum in which new hires and their seniors can give each other feedback and air any questions or grievances they may have in a productive manner.
The goal of these meetings should be to provide guidance and deal with any misunderstandings or problematic behaviors before they compound. Conducting these meetings takes time and planning, but they will save employers from having to exert far more effort in dealing with unaddressed issues later on.
Examples of New Developer Onboarding
A new developer stepping into the office for the first time won’t much about know much about their new workplace. They’ll need to learn everything, from the names of their coworkers to the location of the nearest coffee machine to their desk.
There are many different ways that companies can effectively onboard new developers. For example, Recruiterbox details their week-long, five step onboarding program for developers, which includes configuring the developer environment, hands-on training for tech processes and internal methods, and test implementation.
Google, meanwhile, provides managers with a just-in-time reminder checklist the Sunday before new developers starts working. The checklist contains general tasks such as “Have a role and responsibilities discussion,” “Match your new hire with a peer buddy,” and “Encourage open dialogue.” Google’s reminder checklist emphasizes the importance of two-way communication while largely leaving the details of the onboarding experience to the manager at the team level.
Finally, the online shoe website Zappos takes a different route in offering the Zappos Family New Hire Program — four weeks of dedicated training that consists of “a combination of technical training and culture immersion,” including customer service training that is required no matter what role the new hire will fulfill.
As a result, new developers can see the different software tools available from the customer’s perspective and gain immersion into company operations in a way not possible for their peers in most other e-commerce companies. Zappos has also long been famous for offering money to new employees to quit in the event that they complete the training and do not feel comfortable or motivated to join the company any longer.
While such onboarding processes take some combination of time, money, and effort to put into effect, they are invaluable in helping a new developer become acclimated to the role and build positive experiences in the company as quickly as possible.
Final Thoughts
To attract and retain the best talent, organizations need to ensure that their onboarding process is welcoming and informative. If new developers aren’t impressed with their onboarding experience, their motivation and effectiveness will suffer, and they may choose to leave for an employer with a better system in place.
While there is no single right answer to the question of how to provide the best possible onboarding experience for new developers, looking at what some of the most successful companies are doing today provides some general guidance on what seems to work. Some commonalities include the importance of integrating new employees into the workplace culture, providing peer mentorship and a reliable feedback system, and showcasing company tools and processes in an engaging way.
The first impression created by a well-designed onboarding process is crucial to creating a workplace of happy, loyal, and motivated developers. When done effectively, onboarding goes a long way toward helping new hires become solid, motivated contributors as quickly and painlessly as possible.
P.S. This article is a part of a series of posts from BeautifulCode aimed at engineering managers and developers alike who aspire to become not just great managers but great leaders.