This checklist is primarily oriented towards bringing new programmers to existing development team.
Before First Day
One of the hardest things to do as a new team member is spotting opportunities for work in your codebase. Unless your project is open source, this is likely the first time they've seen your code. Don't turn them loose under the guise of “improving documentation” or “orienting themselves” but provide clearly defined tasks.
“Be warned that being an expert is more than understanding how a system is supposed to work. Expertise is gained by investigating why a system doesn’t work.” —Brian Redman
It’s hard for new team members to effectively build features in a unfamiliar system. They don’t know what they don’t know about your system, and you’ll spend a fair amount of time pre-planning for them. Instead, grab some bugfix tickets and provide the following details:
- A clear description of the problem
- Direction on where to begin and possible causes
- A clear desired end state
- A dedicated teammate to answer questions, provide guidance
- Timebox for completion
Ideally, you should have at least three tickets queued up and ready to go by their first day. Why three? Our minds work more effectively when we're able to switch between tasks when we hit a blocker. Our heads may hurt too much to continue, or we may simply reach a point where we don't know how to proceed.
Designate a tour guide
Assign a more senior team member to act as a “tour guide” for the new team member. Your tour guide will essentially be a concierge of sorts, handling questions and providing tips and tricks you can't find elsewhere. Choose carefully, they can make the onboarding experience a stress-free, fun process or leave a bad taste. There's a distinction to be made between a traditional, long term mentor and a short-term tour guide. These may be the same people, or they may be different. Here are some important factors:
Be reasonably experienced
They'll need to pass on loads of tribal knowledge. They don't need to be technical experts but knowing who to refer questions to is a must.
Depending on your organization's size, this tribal knowledge can include knowing who neighboring teams are, and how your team relates to them.
Solid knowledge of recommended lunch hangouts is a plus.
The chosen “tour guide” should be given a lighter workload for 1-2 weeks after the new employee's first day. This frees them up to focus on guiding their new teammate through the intricacies of a joining your team. Reinforce the idea that a tour guide's job is to be available for questions. Don't let your new teammate feel like they're interrupting someone else's work.
First impressions are critical, and pairing your new team member with an enthusiastic, positive peer is the best way to set the tone for their tenure with your group.
Aside from the manager, this team member will likely have the biggest impact towards making a new hire's first weeks a great experience. Choose wisely!
Provide a schedule for your new teammate's first few days, but plan thoughtfully. There's a delicate balance to be found between too much freedom, and too little. Some people prefer serendipitous discovery, others prefer guided learning.
Always have a plan. Put a few meetings on the calendar to meet with key people, read over relevant bits of documentation or architecture diagrams. Remember to plan downtime blocks, information overload is real.
Don't let your plan become a rigid schedule planned down to the minute. Be flexible and leave initiative up to the new team member. Set the expectation that the schedule is merely a suggestion or guide, and may be modified as they see fit.
Make a point of introducing them during standup, and their first few meetings. This point can't be overstated, especially given the high percentage of introverts in our industry. While asking someone to introduce themselves can cause anxiety in and of itself, it's very important to give them a chance to talk, even if it's only a sentence or two.
Due to inherent tribalism in teams, it often takes an extrovert to feel comfortable (and willing to voice their opinions) in a new team. Often the perception is that it's not socially acceptable to talk unless an insider asks you a question, thereby giving you a platform. Make a point of giving new teammates that platform.
Introduce them to their mentor
Seeking out a mentor is tough for new employees, since they haven't learned the architecture of your organization, or the key players.
If possible, set your new hires up with a mentor outside of their immediate team, and include a slot in your loose schedule for an introductory lunch.
Introduce them to their tour guide
Kick off the dialog with their assigned tour guide, explaining the responsibilities and expectations. Outside of the direct manager, a tour guide should be the second person to take them to lunch.