All posts
Guide7 min read

Onboarding Engineers in 3 Days Instead of 3 Weeks

A day-by-day plan for getting a new engineer to a merged pull request in their first week, and the documentation that plan depends on.

By the Benlon team

When onboarding takes three weeks, it is rarely because the system is too hard to understand. It is because the knowledge a new engineer needs is scattered across a wiki, a few long Slack threads, and the heads of three busy people, and nobody has laid out the order in which to learn it.

This is a plan for compressing the first meaningful contribution into three days. It is not about working faster. It is about removing waiting, guessing, and asking around.

Before day one

Most onboarding time is lost before the new engineer writes a line of code. Prepare these in advance:

  • Access, provisioned and tested. Source control, CI, the issue tracker, read-only access to staging and observability tools. Have someone actually log in with the new account before day one.
  • A one-command local environment. A dev container or a single make dev, verified on a clean machine within the last month.
  • A real starter task. Small, genuinely useful, contained in one service, with a named reviewer. Avoid "fix a typo" tasks, which teach nothing about how changes ship.
  • A buddy with time set aside for questions, not just a name on a list.
  • Four documents that are current: a system overview, a service catalog with owners, an API reference, and a glossary of internal terms. More on these below.

Day 1: Map the system

The goal of the first day is a mental map, not deep knowledge.

  1. Morning: set up the local environment and run the test suite of the starter task's service.
  2. Walk through the system overview with the buddy: which services exist, what each one is for, and how they talk.
  3. Trace one important request end to end, such as sign-up or checkout: the entry point, each service it touches, the events it emits, and where data is stored.
  4. Write down every question that comes up, and answer them from the docs before asking a person.

That last step matters. Every question the docs cannot answer is a documentation bug, and a new engineer is the best drift detector a team has.

Day 2: Go deep on one service

  1. Read the service's overview and its API reference: what it exposes, what it consumes, and what it owns.
  2. Read two or three recently merged pull requests to learn the team's conventions for structure, tests, and review.
  3. Read the most recent incident write-up involving the service, if there is one. It is the fastest way to learn what matters.
  4. Make a trivial change, run it locally, and push it to a draft pull request to exercise CI end to end.

Day 3: Ship

  1. Implement the starter task and open the pull request.
  2. Pair on the review instead of trading comments asynchronously.
  3. Merge and deploy, behind a flag if needed. Shipping on day three sets the tone for everything after.
  4. Hold a 20-minute retro: which docs were wrong, missing, or hard to find? Fixing them is part of the onboarding, not a follow-up.
The best signal of a healthy onboarding is not how much a new engineer learned in week one. It is how few times they had to interrupt someone to make progress.

The documentation this depends on

The plan only works if four kinds of documentation exist and are trustworthy:

1. A system overview

Which services exist, what each is responsible for, and how they communicate. This is the page that goes stale fastest, because it changes every time a service is added or split.

2. A service catalog with owners

For every service: the owning team, the repository, the runbook, and where to ask questions.

3. An API and event reference

Every endpoint and event with its current request, response, and payload shapes. If this is maintained by hand, assume it is already partly wrong.

4. A glossary

Internal names for products, systems, and concepts. New engineers lose a surprising amount of time decoding vocabulary everyone else takes for granted.

How to know it is working

  • Time to first merged pull request for each new engineer, tracked from cohort to cohort.
  • Questions that had to go to a person during the first week. Fewer is better.
  • Documentation bugs reported by new hires. More is better, as long as each one gets fixed.

Where Benlon helps

The hardest part of this plan is keeping the system overview and the API reference current. Benlon generates both from your code and contracts and keeps them in sync on every merge, builds onboarding paths through a system in dependency order, and lets new engineers ask questions in plain English and get answers that cite the source.

Read the getting started guide to set it up, or see how teams use Benlon for onboarding and more.

See living documentation on your own codebase

Connect a repository in minutes. Read-only by default.