Bus Factor 2

May 9, 2025 • Yousef Amar • 4 min read

When I was in uni, one of my engineering lecturers would grade us based on the quality of our lab books. He would insist that it is vital you write down everything you do such that if you were hit by a bus, a competent engineer could inherit your lab book and seamlessly pick up where you left off. He taught us the term "Bus Factor", which is the number of engineers that would have to disappear for a project to stall. When you work on a project solo, you're a single point of failure, so your lab book should act the vehicle for knowledge transfer. The higher the bus factor, the better!

Later, in my journey as a founder, I came across Reed Hastings' thoughts on team building at Netflix. To maintain a high talent density, the average talent should only go up with each addition to your team, which in turn attracts even more talented people who want to be surrounded by the best. Reed coined the "Keeper Test" where you ask yourself if you would fight to keep a team member leaving to go to another job. I instead consider this loosely equivalent to imagining how screwed you'd be if a member of your team got hit by a bus. If it would be a disaster, they pass the bar and should be retained. If not, they should be working elsewhere; you're a professional sports team, not a family.

I agree with both philosophies, but you can see how they would be difficult to reconcile. Do you build a resilient team, or one with zero redundancy? Surely a team of irreplaceable players is a fragile one?

As always the optimum lies somewhere in the middle. You do not want to build a culture where nobody can take a holiday without the company grinding to a halt. And similarly, you do not want to have fungible members on your team warming the bench.

I believe the way out if this conundrum is to have overlapping secondary skills. If your startup is small (<10 people) the magic number is Bus Factor 2. At any given point in time, two people should be able to perform the same role in your business. This doesn't mean hire like you're Noah, but rather make sure that every person on your team has a backup (in skill if not capacity). It's a continuous process; keep others filled in on what you're doing and write clear documentation that can fill them in more in your absence. If possible, whenever you name a project owner, also name their backup or shadow.

The backup might not be as good (e.g. maybe a back-end dev can do a bit of front-end if needed) but this at least means that tasks under a certain role won't be hard blocked the day the primary team member is unavailable. It's ok if it hurts to have your defender play goalie, that means the goalie passes the keeper test (I swear no pun intended!).

Hire T-shaped people in a startup as their generalism will allow your business to still run smoothly without a full complement temporarily, like a melted RAID array before you save it. But nobody should ever be twiddling their thumbs because they're focusing on their spike and not a spare wheel -- never have two goalies! Or worse: a goalie that's worse at being a goalie than your defender.

With that out of the way, time for some pontification! How does this relate to making customers deeply dependent on your product or service? Superficially, this sounds like a good thing: job security and building something people need! Notice I said "need" and not "want". On reflection, taken at face value, this leads to perverse incentives.

On a macro scale, this is how you get monopolies and highly inelastic goods/services. In the long term, this leads to technological stagnation and inefficiency, and in the short term businesses can engage in price gouging and other unethical practices. No competition, no innovation.

On a micro scale, I want to provide goods/services that people buy because it's truly their best option, not because they're forced to. Just as I wouldn't want to sell something because I had no other option and needed the money. I also want to have the option to cut a bad-fit client/customer loose without the moral weight of condemning them to bankruptcy. The power balance between buyer and seller should be such that a genuinely fair arrangement/price can be reached. The market usually does a good job of making things fair.

You can see how this relates to employees; you're still just exchanging money for services. If you cannot afford to lose your job and have no union, your employer can exploit you. If your company cannot survive without a key person, the power dynamic is reversed. Even if the relationship is amicable, imagine not being able to leave a struggling startup for greener pastures because you know that doing so would send it to the grave along with the livelihoods of the rest of the team. Or creating busywork to avoid firing your friends. Not a nice spot to be in, so try and keep the power balanced!

By giving customers an easy way to migrate off of your product/service, not only will they trust you more, but you'll know that they're staying with you for the right reasons and you're actually giving them something they want. If you try and lock them in with dirty tactics (e.g. a Walled Garden ecosystem, predatory contracts, high migration or knowledge transfer cost, etc) you will fail in the long term, because they'll jump ship the moment they can elope with a less toxic spouse. This is how incumbents get killed.

It's not enough to avoid these tactics, you also need to take steps to allow them to stop working with you if they need to. E.g. the ability to export their data in a standard format, or well-written documentation on what you've built for them.

As always, independence is a virtue not just for yourself, but to grant to others as well.