Congratulations on having a new developer! On the first working day with a lot of emotions and doubts about him. Long search behind and hope for future successful work together for you.
Talented specialists are the main resource of any IT company.
A decent salary is not enough to retain and motivate top specialists. A developer should feel comfortable in all aspects. The absence of this comfort and understanding of own place in the team often results in inefficient work or even worse – leaving the company and going to competitors.
You need an elaborate adaptation process to gain the credibility of a new employee and make him a part of the team without stress.
What is developer onboarding
Developer onboarding – is a process of familiarizing a new employee with a new job and environment: what tasks are to be solved, who is sitting at the next desk, what working processes are like, and where a coffee machine is at last.
From the first glance, everything can be covered within the first day on the job. But it is not so easy. Successful developer onboarding requires a deep and individual approach. Ideally, this should be a clear algorithm starting before the first working day and lasting within the first three months of work.
Why developer onboarding is important
Data from the Society for Human Resource Management states that 90% of new workers decide whether to stay or leave the company within the first six months on the job.
Some employers don’t pay enough attention to new workers and get into a neverending cycle of hiring and firing people. Costs increase while efficiency drops.
A streamlined adaptation process helps to avoid these issues. An employee makes fewer mistakes, starts feeling like a part of the team soon, and becomes confident. It reduces stress and facilitates faster work commitment. A committed worker – is a motivated worker. As a result, a person works better and most likely plans to stay for a linger while.
What stands behind developer onboarding
It is not enough to show a newcomer his work desk and introduce this person to the team. Onboarding includes a set of aspects:
- Preparation of the required documents;
- Setup of tools for work and communication;
- Involvement in work processes;
- Familiarization with corporate culture;
- Establishing communication within the team;
- Organization of education;
- The motivation of an employee.
In this article, we will only focus on the involvement of a developer in the working processes and the team. This is the foundation of developer onboarding without which other aspects will not make much sense.
All the above-mentioned processes are quite time-consuming. Let’s sequentially study them from the moment of inviting a developer till the end of the first three months of work.
Days before a developer goes to work (pre-onboarding)
So you found a required developer and shook hands. The process of his adaptation starts from this very moment. There is no need to wait until the first working day since this period can last up to several weeks. Make good use of this time and start pre-onboarding.
Pre-onboarding unites solutions for organizational moments and primary familiarization with the company.
Send a welcome letter
Greet the new team member, confirm the date of the first working day, describe what awaits him shortly, and make an appointment before starting work. Attach an agreement so that a person has enough time to study it before signing.
If there is plenty of time before the first working day, send additional emails once every 5-7 days. These can contain photos of the future workspace, a welcome message from the team lead, etc.
Arrange a personal meeting
The agenda can contain several action items:
- Sign all the necessary documents. This will help to avoid bureaucracy when meeting the team and diving into work;
- Answer the questions of a newcomer or explain yourself about the nuances a person can face;
- Take an office tour. A new person can take a look at the working environment in a relaxed atmosphere and will have a clear picture of where he is going on the first working day;
- Choose a mentor and make an introduction. From now on, a developer will personally know someone from the team and will be able to ask this person for assistance;
- Provide access to the building. Prepare everything a person might need to get free access to the company’s territory: keys, keycards, parking permits, etc.
Add an employee to chats and project management system
On the first working day, a developer will open all the necessary software (Slack, GitHub, Trello) and will not spend time on the authorization. It is also reasonable to create a corporate email address in advance.
Send an email to prepare for the first day on the job
Usually, such letters contain applied information: the beginning of the working day, route to the office, parking slot, time of the welcome meeting, dress code, snacks/beverages offered by the company, etc. You can also list the perks and discounts for employees here (gym membership, promo codes to order food, etc.).
Do not underestimate the pre-onboarding phase. It helps to settle bureaucratic moments and takes a lot of questions and concerns off the table for a newcomer. This will certainly cultivate the loyalty of a new employee.
Developer onboarding: Day one
Day Х has come – your new worker opens the office door. Onboarding starts from this moment.
Several people are responsible for the coordination of adaptation:
- HR – responsible for socialization, familiarization with corporate culture, organizational moments;
- Team lead – sets personal goals for a newcomer and observes involvement in the project and the team;
- Mentor – supervises the technical part: introduces workflows, assigns project tasks, and reviews the code.
On average every new worker passes through 50 adaptation processes. The simultaneous start of all of them is a big mistake. There is a high risk of overwhelming a newcomer with too much information and instead of assistance in adaptation to a new context, a person will get even more confused.
On the first day focus on getting acquainted with the team, setting up the workplace, working with a mentor, a welcome meeting, and nice bonuses for a new employee. Let’s talk about each stage separately.
Getting acquainted with the team
Most likely, when you ask your friend why he likes his job, one of the first reasons sounds like “great team atmosphere”. After all, groundworks are done from the first day:
Introduce the members of your team. Define the areas of responsibility for each worker (if they exist) so that a newcomer has a clear understanding of whom he can address with certain questions. Do not overcomplicate things, present everything simply and clearly.
Ask a new team member to make a brief self-introduction. This shouldn’t necessarily be done in front of the whole department. A short email or a message in the group chat should be good enough.
Invite a new person to join a daily meeting. This is a good way to start getting familiarized with the course of work, achievements, and issues faced. It will also give an understanding of communication habits in the team (if jokes are acceptable for instance).
Schedule lunch for the whole team. Communication in a relaxed atmosphere will reduce the stress of meeting new people. Additionally, such a format allows discussion of topics that are not related to work.
Working place setup
If you haven’t provided all the access and credentials and created email and accounts before the first working day, this part might take some time. The main thing you should do is to tell how you work with software, which chats are used for work, and which are used for communication.
Fundamental rule: Everything should be set up beforehand so that a new worker can turn on the computer and start working.
Work with mentor
Working with a mentor – is one of the pillars of developer onboarding. However, even if you have a tight-knit team and a motivated newcomer, it doesn’t mean that mentorship will go smoothly. Therefore, pay extra attention when choosing a mentor.
The mentor shouldn’t necessarily be the most experienced developer. You should let less savvy team members try themselves in this role. They will appreciate the company’s trust and will be happy to demonstrate their competence.
Working with a mentor is multifaceted. We will talk about this down the road. On the first day, a mentor should:
- Introduce a new person to the team (the team lead hasn’t done it so far);
- Tell about the daily routine and weekly schedule;
- Tell me about the first project. Share project goals, current stage, and the tasks to be assigned to a newcomer. Don’t go into details at this stage, as you will have plenty of time for this. If there is no specific project at the moment, simply describe the approximate tasks a person will work with;
- Answer questions a developer might have.
The worst thing a mentor can do on the first day is to leave a newcomer alone with all these aspects. Even experienced workers need assistance in the beginning since every company has its own rules and standards to follow.
Welcome meeting
A welcome meeting is traditionally a one-to-one meeting with a team lead. Schedule it for the second half of the day to let an employee get accustomed to the new environment and accrue some questions.
Key moments to announce during a welcome meeting:
- Share the goals of your company and the department, forecasted growth, bonus and stimulation system, and cultural code of the company. All this should motivate and encourage;
- Tell about your expectations from a developer’s work simply and clearly;
- Tell about the personnel management processes: who to address regarding sick leave, vacation, etc.;
- Explain how often you are going to have one-to-one meetings and what is their purpose;
- Answer questions of a new employee.
Nice bonuses
Let your new worker remember his first day on the job. When the formal part is over, make a small surprise and present a welcome gift with branded company things. It can contain a bag, water bottle, T-shirt, notepad, stickers, etc.
Try to personalize a gift based on the interests of a person (if you know about them).
Developer onboarding: Week one
The first working week is usually rich in events. A new project, meetings with the team, intense work with the mentor … Hold it, let’s discuss everything step by step.
Familiarization with work processes
One of the primary goals of onboarding is to help a developer cope with his work well. To do this, a person should know all the details of the work processes. Usually, a mentor is the one to help.
Things to do:
- Suggest a new person study your internal documentation, such as corporate SOP, which is a set of algorithms applied to perform certain actions. The newcomer should know what development tools are used (Visual Studio, Xcode), how code is checked, how typical tasks are solved, etc.;
- Create clear code check criteria and let a newcomer familiarize with them before fulfilling the first task;
- Show the order code repository. Let a new employee start to explore the codebase and understand the internal coding rules.
The first practical activity
It’s time to do some practical things! A developer needs to start taking part in day to day work of the team. Start from simple tasks, like fixing bugs for instance (in the case of junior or middle seniority level of the developer).
Regularly, the mentor should talk to the developer and give feedback on the assignments that have been accomplished.
Work with mentor
In addition to the curation of the new employee in terms of development, there are more onboarding nuances worth remembering.
- Schedule daily meetings at the end of the working day. Focus on the written code in detail, answer the questions, and provide instructions and advice. Meetings need to happen in a friendly environment;
- Create an adaptation plan for the month ahead. Specify the educational materials a person should study and what tasks are to be accomplished. Make sure to set milestones and KPIs to track progress;
- Involve a new person in team meetings.
Summing up the first week
The first week – is an important milestone. The new employee has concentrated first impressions and emotions from his work, and in addition to this, he has a fresh look at the established processes in the company. Therefore it is important to have a one-to-one meeting between a new employee and a team lead at the end of the first week.
Chat about the first impressions of work, learn about successes and problems faced, and set goals for the near future. Ask a person if he is comfortable working with a mentor. Be sure to praise the new developer since this meeting should be a positive moment during an intense working week.
Developer onboarding: The first month
Usually, the first month of the new job is quite intense but interesting: various tasks, communication with colleagues, new knowledge. Onboarding should support the newcomer’s interest but should not be overwhelming.
Pair Programming
Close work with the mentor continues. It is time to add pair programming to this game. A mentor and a mentee write the code together, sitting at the same computer. Pair programming sessions facilitate getting used to workflows, and development tools, and help to avoid unnecessary questions.
There are different styles of pair programming, and the choice depends on the level of your new colleague:
Driver-Navigator – one person works at the keyboard, and the second one observes, shares his opinion, and provides directions. This style proves to be effective when roles are traded continuously. It works well both for novice-expert and expert-expert scenarios.
Tour Guide – a developer writes code and explains everything he’s doing. The style works best with a trainee or a junior developer.
Ping-Pong Pairing – development through testing. Most often, experts use this style.
Pair programming with strong interdependence. In this style, the navigator is always an experienced developer, and the novice is the driver. The main idea here is that the driver fully trusts the navigator even if he doesn’t fully understand the code he is writing. All questions can be asked at the end of the session. The style is ideal for juniors and novices in a certain technology.
Usually, it is a mentor who runs the pair programming sessions with newcomers, however, other developers from the team can be involved to lead this process. Refer to the article On Pair Programming to learn more about pair programming, the styles, and usage.
Moving on
We have touched on many elements of developer onboarding in the previous sections. During the first month, regularly continue to:
- Hold review meetings with mentor 1-2 times a week. Evaluate progress based on the tasks accomplished, discuss the written code, and ask questions to each other;
- Summarize the previously planned milestones;
- Arrange meetings with the team lead once a month;
- Bring a new employee into group discussions. If necessary, ask to prepare for the meeting in advance to better present their ideas, comments, optional ways to solve the problem, etc.
Performance assessment and the course of developer onboarding
Schedule a big meeting with the developer at the end of the first month. Traditionally, the team leader hosts this meeting. The main goal – is to provide feedback about the progress of a new employee. The person should be able to take a detached view of his progress and understand what to aim at.
Tell what you expect from an employee within the next stages. Allocate time for the developer’s feedback about all the work steps and collaboration with the team. Before the meeting, think about the questions you need to get answers to from your new colleague.
Developer onboarding: First three months
The onboarding phase ends approximately three months after hiring a new person. Usually, it coincides with the length of the trial period. These 90 days should be used to decide if an employee is a good match for an employee and vice versa. Therefore, it is important to maximally encourage and motivate the developer so that he wants to stay in the team.
Working with motivation
The first three months are just the beginning of work with motivation, and the main aspects include
Learning and ability to apply gained knowledge. Organize training and master classes with programming gurus. Support applying new knowledge on the project, let the developer fulfill himself;
Well-knit team. For many people, the atmosphere in the team is one of the key motivating factors;
Ability to realize one’s ideas. It is important to hear the thoughts of the developer and bring them to life. This helps to make a person feel important on the project;
Demonstrate that there is something more than just code. Remind about the global goals of the project, why it is needed, whom it will help, and what problems it will help to solve.
Manage processes, not people. Don’t constantly tell developers what to do. It is better to delegate a task, give them some time and tools, and step back.
Colleagues’ feedback
For three months colleagues had enough time to form their opinions about the new teammate and it’s time to get their feedback. You can ask them personally. Or you can unify the process and send a questionnaire to colleagues who communicated with the new developer. If needed you can make it anonymous if you consider this necessary.
Learn from your colleagues how a new person joined the team, whether communication with this person is comfortable, about strong and weak sides, how easy this person is to deal with in work, etc.
Summing up developer onboarding results
It is time to sum up the developer onboarding outcomes. As a rule, the team lead holds the final meeting. Here are the main things to discuss:
- Evaluate the developer’s work – efficiency, goal achievement, and work cadence. Give your feedback;
- Share the results of peers’ questionnaires (don’t quote, highlight the most important), discuss the pros and cons that were revealed;
- Ask a developer about his impressions of work, team, and management. Learn about his concerns regarding work processes and what should be changed. Ask if he is ready to continue working together;
- If you get a positive answer to the previous question, discuss the developer’s career growth, and create a development plan for the next six to twelve months.
Wrapping up
The organization of developer onboarding processes can differ from company to company. The sequence of steps and approaches can be changed. You can also come up with your own ideas. Nevertheless, successful developer onboarding within the first three months requires:
- Familiarize a newcomer with work processes;
- Arrange collaboration with a tutor;
- Work on new developer’s motivation;
- Make a newcomer a part of the team.
Premium onboarding always pays off. For the company, it is a great chance to build a team of talented developers, improve work efficiency, and avoid staff turnover. For the developer – comfort in the company of workmates, clear understanding of what should be done at present and where to develop in the future. In addition to that, you’ll see the bright eyes of your employee as he is interested in his work. Isn’t this the ideal situation?