So you're an on-boarding buddy
It's fairly standard practice to assign a buddy to new colleagues in tech companies. The idea is to cut through the bystander effect, and give them someone who can directly help answer questions, big and small.
It's a team's collective responsibility to set up new employees with what they need for success, but a buddy is there to help navigate a team, an organisation, and their tasks.
In the post I’m going to be talking about the “buddy”, and what they should to help their “new-joiner” to the team. Some of this is tech-specific, but most of this is general to everyone joining a company.
Who
A buddy is usually not the manager. The buddy is there to welcome the new-joiner, and make sure they have someone they can turn to with questions related to their day-to-day work.
In a small company, a buddy is usually best as someone who works on similar tasks to the new-joiner. Buddies should have ideally been through the on-boarding process themselves somewhat recently, as they may have encountered some of the problems recently enough to remember how to solve them. I would say the best buddies have been with the company 6 - 18 months.
In a bigger company, it can help to have an extra, less involved, “organisational buddy” from a different team or part of the org. The idea is to break down silos, and help the main buddy, the organisational buddy, and the new-joiner, to know a wider distribution of the company.
The principles I try to follow:
Leave everything better than when you found it.
A team growing can often highlight problems in the team, ranging from out of date documentation or poorly defined meetings.
Questions are always good.
A good answer doesn’t always have to be an explanation of an entire concept, but it can be to point someone in the right direction of documentation, presentations, or code.
Breathing room can be as important as focused shared time.
Everyone learns differently. Some may want to spend a while reading a codebase, others may want a walk-through.
A buddy is not just during on-boarding, but will likely be a connection for the new-joiner for as long as they’re in the company.
Knowing all employees in all functions relevant for the team is crucial for future collaboration.
What do buddies need to succeed?
To set a buddy up for success, a manager should make sure their reduced capacity is taken into account. Any learning material should be made available before the new-joiner starts, so that the buddy can familiarise themselves with it. A buddy will also need a list of things the manager considers important to be covered.
Some skills I find valuable in a buddy:
Patience.
Capacity to spend time with their new-joiner.
Empathy.
Comfortable reaching out to others when there's questions they can't directly answer.
Familiarity with common problems new-joiners face.
Culture
A culture which is only described through slide decks or documents isn't one that stays alive. Company culture is a lot more about the experience: not the description. Every person will experience things differently, but the buddy’s role is to try to impart some of the forums, the priorities, and the principles of a team, and a company.
Social events
A buddy should make sure that the new-joiner is not missing out on social events. Going for lunch together helps a new-joiner meet other teammates.
In a social event with a lot of new people, it can be overwhelming for a new-joiner. So many new names, faces, roles, teams, abbreviations to remember, and they’ll want to make a good impression on everyone they meet. It can be a lot of pressure.
Buddies will be an “anchor” - someone who the new-joiner can be near whenever they feel shy, awkward, or nervous in social settings. I use this concept a lot, in all new social settings.
An example:
You’re talking to a person, but they have to leave. Everyone else is in group discussions, where you don’t know anyone.
You feel awkward for a few minutes trying to find a group you could join.
You spot your buddy, so you go to their group.
Your buddy welcomes you, and introduces you to the rest of the group.
Networking
Every person has a different set of experiences, knowledge, and interests. A buddy is a person, and so is a new-joiner. So it’s to be expected that they have different backgrounds. A buddy’s role is to link up the new-joiner with others who have similar interests.
An example:
You talk to your buddy about how you’re interested in learning how LLMs work.
Your buddy doesn’t work much with ML or data science, but knows someone in the company who does.
Your buddy takes you to that person’s desk, and introduces you to each other.
You stay in contact, and the person lets you know which channels to join to stay up to date with the goings-on in the company.
You end up attending some shared events about LLMs.
Raising ideas
New-joiners will also change the company’s culture. They’ll probably have a lot of good suggestions, based on what they’ve experienced in prior teams or companies. A buddy’s role isn’t to make sure all these suggestions become reality, but to make sure they can bring them up with the right people.
An example:
You tell your buddy about how you used to have board game evenings at your last workplace.
Your buddy isn’t a big fan of board games, but your buddy tells you about how they previously had board game events, run by the social committee.
Your buddy points you to the social committee, and let them know you’re curious about board game events.
The social committee tell you there’s nothing planned coming up soon, and help connect you with some people interested in board games.
Tasks
Why does the team exist?
Management and leadership should address the big picture, but a buddy can help explain what their specific team does day-to-day, and why. Directly connecting tasks to the purpose and the value created helps new-joiners understand their role.
The on-boarding checklist
The list of things that should be done when someone joins is pretty standard, person to person. Sometimes a manager will do these, sometimes it’ll be the buddy. My recommendation is for the buddy to introduce the list, but let the new-joiner do a lot of it async. Giving space for the new-joiner to breath, in between the socialising, is important to give them a chance to slow down and take things in.
A great on-boarding list contains:
A list of channels and mailing lists to join.
There should be a description of each one, and why they should join it!
Access to tooling (e.g Github repos, Figma, Miro).
Intro to the org chart.
Intro to any team documentation.
Lunch with team members (can be remote).
The new-joiner has made their first issue.
The new-joiner has made their first pull request.
Finally, the new-joiner should update or amend this list for anything they discovered not to be covered
If on-boarding happens rarely, then this list will likely fall out of date. Even if it happens frequently, it’ll still probably be out of date. The buddy should double check that the list makes sense, prior to the new-joiner starting.
First pull request
Getting a new-joiner to have merged code in one of the team’s repos within the first week is a good goal to have. It does not need to be a big change.
It serves some purpose:
Get the new-joiner’s dev environment set up
Get them to run a project locally
Make sure they have all the right env vars
Get them to run the tests
Get them to go through any pull-request processes you may have
Do you use review apps? Linters? Code review?
Get them to have some kind of impact, as soon as possible.
It is no longer “your” code, but “our” code.
Some example first commits I’ve had:
Adding some tests and a small bug fix when an author is missing a name.
Correct some documentation that someone pointed out was incorrect.
Shadowing
If a buddy will be working on the same team as a new-joiner, it can be a good idea to invite them to all the meetings that the buddy has. This concept is sometimes called shadowing, where a new-joiner is following the buddy around, like a shadow follows a shape.
Prior to each meeting, the buddy should explain the purpose, and who is involved. If the meeting doesn't have a clear purpose, it can be a good opportunity to clarify with those involved as to why it exists.
Every meeting with a new group of people should ideally start with introducing the new-joiner to the other participants, and vice versa.
In the office
The buddy should usually join the new-joiner at their desk for most of the first week. They don’t have to be working on the same thing, but being sat closely helps lower the distance for any questions.
The buddy should introduce the new-joiner to the people sitting nearest to them, even if they’re on different teams. These are the people the new-joiner is most likely to get lunch with, or have small conversations. The buddy is there to break down any social awkwardness or barriers.
If the office has a lot of meeting rooms, having a map to each room can be very useful. Pointing out where office supplies, coffee, and bathrooms are is also useful.
The buddy should ensure the new-joiner has someone to eat lunch with every day. It doesn’t have to be the buddy, if there’s a conflict. But the buddy should ensure that the new-joiner isn’t going to be sitting alone.
Finally
Joining a new company can be intimidating or overwhelming. I’ve found that companies with a buddy system have been a smoother experience for me. Like all things, it’s never a perfect process, but going into it with the right mindset is super helpful.