The 🚌 Factor
The smallest unit is the team, not the individual.
In a small team, this tends to happen. One person is in charge of a part of the system.
Bob is the only developer implementing payment providers. Alice supports marketing and builds landing pages. Jane does all the deployment scripts. Fred maintains the admin interface.
This is the typical setup.
We can’t deploy when Jane is sick, and no landing pages get tweaked for two weeks when Alice is on vacation. And let’s hope Bob doesn’t quit even though he’s burned out.
Bus Factor: 🚌🔥 (1)
This is a terrible situation. The system only works when everyone is at work and has an equal load. That rarely happens in the real world.
Let’s say we need to build more landing pages. I guess Alice is working overtime this weekend without any help.
How to fix this? ↳ Transfer the ownership of subsystems to the team. ↳ Cross-train people to be able to work on more subsystems. ↳ Instead of assigning, let people pick and choose tasks (pull vs push).
Here is what we did with a CTO that I was mentoring.
We created an on-duty system where, during standard working hours, a pair of engineers would first clear all the reactive tasks—customer support requests, bugs, etc. 🫡
Those would inevitably touch different systems, forcing the engineering pair to learn how to work with, update, and deploy that system. The people with the best knowledge of that subsystem would support it.
In a few months of this rotation, every team member had at least a surface-level understanding of all the subsystems. ↳ The knowledge in the team increased. ↳ The team is more independent (they don’t need to be instructed on how to fix something). ↳ The bus factor is no longer a problem. It’s a bus fleet. 🚍🚍🚍
Ultimately, we could cancel the on-duty system as it achieved the desired result. ↳ Productivity went up. ↳ People can help each other out. ↳ Vacation and sick leave is possible. ↳ Working on an actual team instead of a collection of soloists is more fun.
That’s the good stuff that I like to see.
Best regards,
Taj