Effective team onboarding in Agile software development
Updated: May 4, 2022
The current crisis caused by the covid-19 has helped us appreciate the flexibility and skills of excellent staff. Ensuring they can meet our expectations and adapt to a changing environment (especially in the Agile environment) is crucially important in this challenging time. So, what happens when you are under pressure to recruit new staff into your team, either through external recruitment practices or by simply moving them from another department/team of the organization? How long does it take to get them to a level where they can add real value to the team and the business? How long does it take to get them up to speed? How quickly can they adapt to the agile way of working?
Onboarding is the term used to describe new employees joining and integrating into an organization or team. Here is the complete definition as shared in Wikipedia "Onboarding, also known as organizational socialization, is management jargon first created in the 1970s that refers to the mechanism through which new employees acquire the necessary knowledge, skills, and behaviors to become effective organizational members and insiders". However, there is more to it, as the onboarding process is also about how you manage the whole process of embedding new employees from the first phase of the onboarding process (Usually a phone interview) to the point at which they're genuinely part of the team and can contribute similarly to any other team member.
Now, because agile teams are Self-Organized, autonomous (in one way or another), cross-functional (so they can have the experience to succeed), and drive for continuous improvement at all times. A new team member can face many obstacles while integrating into the team. Also, agile team members (regardless of their formal role) are expected to manage their work, estimate their tasks, and often take on several tasks parallel (depending on the WIP). As you may understand by not, all these factors can make it difficult (to say the least) for new staff to join in.
But wait, there is more. A new team member that just arrived at the team will most likely have its challenges that usually involve:
Culture Context to fit in with new company culture and fit in the team's norms that may differ from the previous workplace.
Standard of work to understand how to code, test, and deliver value to the team's expectations.
Understand the responsibilities, expertise, and authority of other team members.
There will be a learning curve (depending on the Agile framework the team uses) and, even more, critical to adopt the Agile mindset.
And there is a regular staff of learning the tools and frameworks the team use to manage and deliver their work.
Ideally, new members must support their team during this process through an effective team onboarding program that includes both the HR and technical phases that will help each newcomer feel part of the team and not an outsider. (Although my experience suggests that this is challenging for many organizations). My objective in this article is to share the understanding and critical insights on how to overcome the challenges of organizations and their teams of team onboarding to get the most from the onboarding process.
The onboarding process
When I think of the Agile onboarding process, I can say that it usually contains three core tasks performed: pre-onboarding, onboarding, and post-onboarding. In the following few paragraphs, I will share best practices, tips, and checklists that helped me ensure that we succeed in the onboarding process.
There are a lot of pre-onboarding tasks done behind the scenes and even before we start the recruitment process. So, the pre-onboarding duties and the questions we need to answer should include the following items:
What is the framework we will use to manage the onboarding process?
Defining the framework, we will use throughout the entire onboarding process is essential to the success of this process. It allows multiple peers and stakeholders to understand critical information related to the recruitment process and increase the clarity and effectiveness of the whole process. For example, we can easily understand the current progress of the onboarding process, the owners involved in the onboarding process, and their responsibilities. The best part is that it provides the new team member with the essential information about the onboarding roadmap. These timelines will most likely reduce the anxiety and uncertainty involved in the onboarding process.
And the good part? You can use different tools to create this process, including TeamFluent, TFS, SharePoint Onboarding Templates, and Microsoft planner
TIP: The plan should include items related to the following categories:
Do we have the logistics ready?
There is nothing more frustrating to have a new team member that cannot work just because his physical place is not ready or that the IT department has failed to deliver his computer on time. To ensure that all the logistics will be available on the first day, you can use a "Logistic checklist" and follow it. This checklist will usually contain items such as:
The physical place is ready.
All hardware is available.
All software tools are ready.
Most of us who love to focus on the technical aspects of our work will prefer to start our first day without the need to sign HR and Finance documents. Today, we can easily do it by using e-signature tools like HelloSign and DocuSign. We can send all docs to the candidate for signing before the start date using these tools.
The onboarding Process Owner
Every onboarding process MUST include an owner that manages, inspect and track the progress of the new team member. For me, the best candidate to achieve this goal should be the direct manager (for obvious reasons). As part of his responsibilities are:
To ensure that the onboarding process is done as it was intended.
To remove any impediments that may impact progress.
To ensure items are starting and ending on time.
To generate feedback for future improvement of the process.
Be the "someone to talk to" when the new employee needs it.
So now that the onboarding items are all set, it's time to focus on the onboarding phase and its core items. Remember, when a new team member arrives at work on their first day, we want to guarantee that we take as much time as needed to understand the context and the organization.
Share a New Hire Announcement
When you hire a new team member, they may lack confidence (due to obvious reasons such as anxiety) to introduce themselves to the team or other stakeholders. One way to help them feel welcome is to send a new hire announcement that they can see. It can be done via mail, simple message on Slack channel, or any other communication channel that will allow every team member to say hello and send a welcome message to the new hire.
A good introduction message can be formal, as you may expect, but a better approach is to make sure it has some humor that includes a few fun facts about the new hire. So a welcome message can consist of:
A Few congratulations words.
Their name, to whom they will report, and the department they belong.
What's their role?
What do they enjoy doing in their free time?
Fun facts that can break the ice.
Hardware and Software Setup upfront
I think that nothing says more "we value you" or "great to have you here" than welcoming a new employee with all the items he will need to perform his job. It simply means taking care of all their equipment; Are there any tools that require licensing, Special software? And what about the physical workstation your new hire needs? If there is anything you can prepare in advance, make sure you do it. One way that worked well for me is to create a checklist of things that will ensure they can work, for example:
A security badge to enter the building.
Physical workstation (Laptop, Screens, etc.).
Licensing to the software they needed.
Company E-mail or any other collaboration tools set up.
Permissions to access different repositories.
Staff list and phone directory.
Conduct a welcome session\s
So it's the first day of the new team member that is probably anxious about the first day at work. So how can we help him? A good practice that I find very efficient in the onboarding process is, to begin with, a welcome session made first by the HR team and then by the Group/Team manager that can give them a tour and introduce them to team members and other peers.
A good way of doing so is to set a meeting such as all-hands-on-deck and bring new employees into this meeting and ask them to stand up in front of the group to introduce themselves (You can also do it on a smaller scale such as just adding them to the team daily or conduct an Ad-Hoc meeting with their team members). What is essential in this meeting is to make them feel comfortable (so make to not as any embarrassing questions).
On their first day, Get them a drink at the office or take them to lunch. Also, walk them around the office and show them the different facilities. You must show them the team space where the actual work is being done.
Brief your team upfront
Agile teams are often highly engaged and have a solid social setup where the communication and collaboration channels are already well-established. To help the new hire and the team break the ice as soon as possible and ensure that the new hire will feel welcome. You must talk with the team to set the expectations. For example, you can share information on the new employee, his strengths, how he can contribute to the team accomplishing their goals, and more.
Setting the Expectations and Technical Meetings
It's now the time to get into the serious stuff and conduct 1:1 meetings (Usually made by the direct/Group manager) to ensure that the new employee understands the expectations and to provide more information about technical aspects:
Explain the details of your workflows and processes.
Create user accounts for software tools.
Talk with them about the coding/testing standards.
Review the main Frameworks and Tools used by the team.
Provide all the training materials.
Explain to them who are the people on the project are and their responsibilities.
What are the meetings they will participate in, and how can they contribute?
You must provide the new team members with the information to do their jobs effectively. Therefore you need to divide the technical session across team members that can invest their time without affecting the progress of their work. There must be formal meetings so the knowledge transferring will become effective as possible. Still, you can also use different data sources such as Checklists, Team Wiki pages, Software Tutorials that can replace long employee orientation meetings.
Set Goals and monitor
To help the new hire succeed in his new role. Setting goals is a must. As I learned through the years, people do best when they know what they expect and how their performance will be monitored. The monitoring process must be constructive, so make sure you get feedback on how they find the role and feedback on their performance.
Mentoring can make it easy for everyone.
Before you rush and give the new team member a complex project, you must pair them with someone else on the team. This person should have the time to invest in the new employee and the emotional intelligence to understand the situation. This team member should have the technical knowledge and experience in the product and the team process to transfer the knowledge theoretically and practically. The mentoring process takes about one to three weeks, meaning that you must ensure that it's done without being too disruptive to the team.
It is critical for a team lead/mentor to hold regularly scheduled one-on-one meetings with the new team member to ensure he's doing fine. The meeting structure should be as lean as possible not to add more bureaucracy or make the new hire feel micromanaged. So. in these meetings, I put the new hire in the center, asking him to share the current progress, ask any Q & A, share constructive feedback, and if any issues arose that need my attention.