Bus Factor and Team Risk Management
Bus Factor is the number of team members who need to be hit by a bus (hypothetically) for the project to stop. If it is 1, you have a serious problem.
Calculating Your Bus Factor
For each module/component of the system, ask:
“If [Name] leaves tomorrow, who can maintain this?”
| Module | People who know it | Bus Factor |
|---|---|---|
| Authentication | Ana | 1 |
| Checkout | Ana, Bruno | 2 |
| Reports | Carlos, Diana, Eduardo | 3 |
| Notifications | Bruno, Eduardo | 2 |
| Admin | Ana | 1 |
Project average Bus Factor: 1.8 — concerning.
Why Low Bus Factor Is Dangerous
- Vacations become stressful — the person can’t take time off without their phone ringing
- Asymmetric negotiation — “either increase my salary or the module becomes orphaned”
- Burnout — one person carrying critical knowledge
- Impossible to estimate — only one person can estimate that module
How to Increase Bus Factor
1. Pair Programming
The fastest way to transfer knowledge. 1 week of pairing = 1 month of reading code.
2. Cross-Module Code Review
Force reviewers from outside the module. “Nobody from the checkout team can review this PR? Great, that’s exactly what we need.”
3. Living Documentation
- README in each module explaining “how it works” and “how to run it”
- Decision Records (ADRs) explaining why choices were made
- Runbooks for operations (what to do when something breaks)
4. Responsibility Rotation
Each sprint, a different person “owns” each module. Knowledge spreads naturally.
5. Internal Tech Talks
Weekly, someone presents a part of the system that only they know.
6. Forced Cross-Training Estimation
In Planning Poker, force members who don’t know the module to vote as well. The discussion reveals knowledge gaps the team may not even know it has.
Bus Factor and Estimates
When a module’s Bus Factor is 1:
- The estimate is only as good as the person who gave it
- If that person is wrong, the whole team is wrong
- Planning is as fragile as that person’s health
Solution: For modules with Bus Factor 1, every estimate must be validated by at least one other person.
When Bus Factor 1 Is Acceptable
- Legacy module about to be replaced — investment in knowledge is not worthwhile
- Person in transition out — document, don’t train
- Very low-criticality systems — the risk is acceptable
Conclusion
Bus Factor is not about pessimism — it is about resilience. Teams with an average Bus Factor of 3+ are more flexible, estimate more accurately, and don’t depend on individual heroes. Invest in knowledge sharing today, before you need it.