Onboarding drag: Brooks's Mythical Man-Month revisited, and what it costs to onboard into smell-dense code
Frederick Brooks published The Mythical Man-Month in 1975. The core observation holds fifty years later: adding people to a software project is not linear. Smell density makes the non-linearity worse.
The Mythical Man-Month (Addison-Wesley, 1975; 20th anniversary edition, 1995) gave software engineering its most durable aphorism: “Adding manpower to a late software project makes it later.” Brooks's Law.
Three mechanisms drive the non-linearity: (1) training overhead - every new hire must be brought up to speed, and the cost is paid by existing team members, not just by the new hire; (2) intercommunication overhead - the number of communication paths in a team of N is N(N-1)/2, which grows quadratically; (3) partitioning friction - not all work can be divided into independent tasks. Some work is inherently sequential.
Brooks wrote for a 1975 audience using punch-card-era systems. The intercommunication overhead has been partially addressed by modern tooling (Slack, GitHub, Notion). The training overhead and partitioning friction have not. In fact, smell density has made training overhead significantly worse.
Pluralsight's State of Developer Onboarding 2024 found that median time-to-first-meaningful-PR ranges from 2-4 weeks on clean codebases to 6-12 weeks on smell-dense ones. The difference is the onboarding drag attributable directly to code quality.
The mechanism is specific: a new hire encountering a God Class must build a mental model of 1,200 lines of orthogonal logic before they can safely modify any of it. The same hire encountering a well-bounded 200-line class can be productive within days. The cognitive investment is non-recoverable and blocks productive contribution.
Compounding the problem: senior engineers bear the shadow cost. A senior engineer spending two hours a week answering questions from a new hire during an extended ramp period is an engineer producing two fewer hours of feature work per week. At eight new hires per year on a smell-dense codebase, the shadow cost accumulates into a meaningful fraction of senior engineering capacity.
Worked example: team of 20, 15% annual turnover
This is a conservative model. It does not include the quality cost of defects introduced by new hires during an extended ramp period, or the retention cost of engineers who leave because they cannot be productive. See the full calculator for the complete model.
- First-PR time over three weeks for engineers who are otherwise qualified for the role.
- New hires' PRs have 2x the comment count of senior engineers' PRs. They are making different mistakes than experienced hires at other companies make on cleaner codebases.
- New hires repeatedly introduce the same class of bug in their first month. Often traceable to a specific God Class or Duplicate Code cluster they did not know was duplicated.
- Exit interviews cite the codebase as a contributing factor to departure. This is underreported but appears in qualitative retention studies.
- A living codebase tour document. Updated within a week of any major architectural change. Not a wiki page that was accurate in 2021; a document someone owns and maintains.
- One explicit mentor per hire for the first quarter. Not “ask anyone;” a named person with cleared time allocation for the responsibility.
- A first-week “fix a small smell” ritual. Pedagogical: the new hire learns the codebase by navigating it with purpose. Measurable: the smell is tracked and closed. Motivational: the new hire ships something in week one.
- Explicit refactoring time in the new hire's first sprint. Not “if you have time;” budgeted. A new hire who spends two days fixing a God Class has built a better mental model of the system than one who spent two days navigating it with confusion.
- Up-leveled interface documentation on the most-touched classes. Ousterhout's A Philosophy of Software Design (ch. 13) is the best reference on what useful interface comments look like.
The hiring-cost compound: onboarding a $180,000/yr engineer and losing six extra weeks to smell-driven ramp is a $20,770 invisible line item per hire. Scale by turnover and it rivals the cost of a dedicated refactoring quarter. See engineeringhiringcost.com for the full hiring model.