I recently ramped into a large project that has been in active development for over a year. With a deep project history, a complicated domain, and intricate project architecture, there was a lot to catch up on. Below are three things that helped minimize the time needed to find my feet.
1. Skip the Firehose; Tell Me Where to Find Water💧
When joining a project with lots of historical context and complex domain knowledge, it might be tempting to fill your new team member in on everything. Don’t. Skip the firehose for the first week or two.
Instead, point out where they can find sources of water. For example, instead of “Here is everything to know about X,” try “You might have questions about X; this is where to go to learn more about it.”
If you find yourself having to explain everything, that likely exposes gaps in documentation and discoverability. Long-running projects often accumulate workflows or practices that are passed down as “tribal knowledge.” It’s best to capture these and make them easy for new people to find.
2. Use Pictures and Diagrams 🗺
They say a picture is worth a thousand words. Sadly, very few teams invest enough time in creating visual artifacts and diagrams to document the project landscape. As a new developer on a team, diagrams help me get my mind into the project world and new domain.
Getting a diagram is like being handed a map, rather than a book describing where you’re going. Especially in a remote work context, visuals are a powerful tool for turning the abstract into meaningful knowledge.
3. Pair Program from Day 1 🍐
Here at Atomic, we pair program regularly. Even if your team does not make a habit of pairing, make sure to do so when ramping on new team members. It will help connect the dots between the high-level “map” of documentation and the realness and specificity of development.
As questions arise, the new member can ask questions in realtime with more context. Collaborating on a feature or bug fix will help fill any initial knowledge gaps and solidify the newcomer’s understanding of the domain. The first few days might be slower than usual because of extra questions and explanations. But pairing will help minimize ramp-in time and get the new team member integrated!
Joining a new project midstream can be exhausting. But helpful documentation, knowing where to look for answers, and pairing from day one can make it a little easier.