The bus factor: what happens if your developer gets hit by a bus?
Or quits. Or gets hired away. Or just goes on vacation.
Can your team maintain the software without them?
If the answer is "no," you don't have software.
You have a dependency.
The Problem With Hero Developers
Most custom software is built by one person or one small team.
And all the knowledge lives in their heads:
→ How to deploy → Where the config files are → Why that weird workaround exists → How to fix it when it breaks
When they leave, that knowledge leaves with them.
And you're left with a codebase no one understands.
How to Build for Maintainability
Every ScopeForged project is built to be maintained by someone who wasn't there.
Here's how:
1. Documentation as a Deliverable
Not an afterthought. Not "TODO: add docs later."
Comprehensive documentation is part of the project scope:
→ Architecture overview → Deployment process → Environment setup → Common troubleshooting → How to add new features
2. Standard Frameworks
No custom-built-from-scratch solutions.
Use proven frameworks with large communities.
Any competent developer should be able to pick it up.
3. Code Comments Explaining WHY
Not WHAT the code does (that should be obvious).
But WHY it does it that way.
"This workaround exists because the API doesn't support X."
"We used this pattern to avoid Y performance issue."
4. Automated Deployment
No manual SSH sessions. No "run these 12 commands in order."
One command to deploy. Anyone can do it.
5. Infrastructure in the Client's Accounts
Not the agency's AWS account.
If you need to leave, you don't lose access to your own infrastructure.
6. Handoff Session
Before the project ends, a live session with the maintenance team:
→ Walk through the architecture → Show how to deploy → Answer questions → Transfer knowledge
Make sure someone else can actually maintain it.
The Maintainability Test
Could a competent developer who's never seen this codebase:
→ Set up a local environment in under an hour? → Deploy a change to production confidently? → Understand the architecture from the documentation? → Add a new feature without breaking things?
If not, you have a maintainability problem.
Does your software pass the bus factor test?
#SoftwareDevelopment #TechnicalDebt #EngineeringLeadership #Documentation #CodeMaintenance
→ scopeforged.com
Philip Rehberger Founder, ScopeForged scopeforged.com