The Secret Behind Great Developer Onboarding
Starting a new job as a developer can be a little overwhelming. There is a lot of information to process, new faces to see, and code you want to get up-to-speed with as soon as possible. A positive onboarding experience can make a huge difference to a developer’s happiness and productivity.
To hear more about both sides of this onboarding process, we spoke to two Runtastic employees: Android Developer Elymer Orozco, who told us about her experiences when joining Runtastic in Vienna; and Lead System Architect Simon Lasselsberger, who has been with the company for seven years.
Here are three components of Runtastic’s successful onboarding experience, which has evolved.
Write code, learn about the company, and get to know your colleagues.
At the end of your first few weeks as a new developer, there are certain tasks you should have accomplished. Whether it’s in a sandbox environment or by submitting a ticket on a small side project, most developers would like to get their hands on the company’s code as soon as possible. The other main accomplishments are to get to know the company’s coding conventions and, of course, your new colleagues.
“I remember during my first week, our Platform Architect (Lasselsberger) set aside some time to talk me through the architecture,” said Orozco. Even though Orozco now works in Vienna, she spent her first four weeks working in the Linz office, Runtastic’s headquarters.
“We try to onboard people where their team is located,” Lasselsberger explains. “Sometimes it’s just better to see someone in person, especially when they are new.”
Get the most out of onboarding with a buddy program.
One of the things Runtastic has developed over time is the buddy program. “When you are a small team of 5-8 people, your onboarding does not need to be too formalized. The new person is just given a task, and they talk to anyone around if they have questions. But this doesn’t scale for obvious reasons,” Lasselsberger tells us.
A buddy program like this is a great way to have a dedicated person of contact. They will review code and have daily stand-ups with the new team member. Both Runtastic developers advise new employees to ask as many questions as possible during this time.
“I expect new starters to ask a ton of questions,” says Lasselsberger. Orozco adds, “For some people, it might be the first time they work with pull requests. It takes some time to get used to them. But it is also very rewarding. I was surprised by the amount of feedback you get and the knowledge-sharing that is happening. People will send you links and point out ways your code can be improved.”
Your designated onboarding buddy should not be the only person you turn to with questions. All development teams have stand-up meetings to catch up on everything that is going on. “This is where we can discuss what we are working on and for others to make suggestions. You can ask anything and be sure your opinion is valued,” says Orozco.
She also stressed the importance of knowledge-sharing, saying, “We also have weekly meetings within the Android team where we discuss the latest development trends, new libraries, breaking changes in our code, useful tips, and more. All these presentations are shared afterward, so they are available for you to read up on as a new starter.”
Scaling the onboarding process together with a growing team
“One thing that has always been important to us is giving new developers something meaningful to work on. In our case, we’re lucky — we have security levels in place that allow developers to work on the actual product without the danger of releasing low-quality code to the software,” says Lasselsberger.
In addition to working on the product, there are other ways to show a new member that they are a valued member of the team. This is something a great team will make a conscious effort to achieve. Lasselsberger describes their strategy, saying, “We are quite strict with the first few pull requests when someone is starting to work, and we give loads of feedback on their first code. This is about getting team members talking as much as it is about having high standards for the quality of our code.”
For a team to be successful, it’s important for everyone to know how each other thinks. Great onboarding sets the foundation for future knowledge-sharing in a growing team. Lasselsberger says, “The people that join us are great programmers, so we need to make sure that we hear what they bring to the table and don’t fall into a ‘This is how we do things here’ sort of attitude. They have valuable knowledge. Just because we already have our way of doing things doesn’t mean that we could never be wrong about something.”
Runtastic seems to have succeeded at that, as Orozco confirms with her experience. “I think the fact that a company has a lot of documentation actually helps when introducing new ideas. You can always read up on the reasons why something was done a certain way in the past. Then, in the next stand-up meeting, you can talk about a specific approach and always challenge it.”
It’s embracing this competition of ideas with every new team member that sets a team up for success beyond onboarding. “I remember one time, we reached a point where we had two senior developers on Kotlin with just very different styles of working,” says Orozco. The team then decided to solve it by hosting an all-hands workshop and discussing the approaches face-to-face — an experience she still remembers fondly. “It was great to get all these brains in one room. It showed us that there is not one correct way to resolve a problem, but instead many possibilities. I think it was a great learning experience for everyone.”
There seems to be a strong correlation between how a team approaches knowledge-sharing and personal growth and the way they handle onboarding of new team members. Lasselsberger would agree, saying, “I think it’s really important to take the topic of onboarding very seriously. If you can figure this out, it’s how you grow as a team — not just in headcount, but in the quality of your solution.”
A company’s onboarding process is something to think about when evaluating your future employer. You can browse companies hiring developers in German-speaking countries on Stack Overflow.
I must reckon this is a great post about having the right onboarding process for a development team in any companies out there, being public or private sectors. Many times, they just think that by assigning a buddy to the newcomer will solve everything. Sadly, there simply isn’t any proper onboarding process to follow, and there have not been any standards in stuff like coding conventions, and documentation in place, too! That’s quite sad and very true for many companies out there. I strongly encourage everyone who is in charge of their development team, or any start-up to be to read through this and have those onboarding processes and considerations in their mind when they recruit their next developer.