Skip to main content

The bus factor, during the pandemic

·4 mins

The definition of the bus factor from wikipedia says:

The bus factor is a measurement of the risk resulting from information and capabilities not being shared among team members, derived from the phrase “in case they get hit by a bus”.

When thinking about the team structure, having a SPOF (Single Point Of Failure) as a single person - isn’t something desirable. “What if X gets hit by a bus? What would we do? X was the only one who knows how to do Y”. On the other hand, it’s not ideal to live in constant fear about getting hit by a bus and shard every bit of the team’s areas into multiple members.

In the context of the pandemic, it’s more likely that people will ‘get hit by a bus, and get back to life after a week’. People will test positive and will have to get into isolation. Maybe someone in your team member’s immediate family will get sick - and that team member will have to attend to the family member. I find it hard to come to terms with having my plans shift in a very short notice. Having said that, a ~week isn’t something big in the grand scheme of things.

What can the team do? #

Know the team’s priorities. If a team’s mission is clear, it’s easier to reprioritize when needed. Ideally, the people should be the number one priority. If someone ‘gets hit by the pandemic bus’, the team should cover for that person. Having clear priorities can help decide whether someone should pick up a project which is now stalled, or it may be OK to leave that project as is - and let the person pick it up when they get back.

Give the person time. If person who got hit by the pandemic bus needs to take care of themselves or their family, the team should respect that as much as possible. Reassuring the person that they can disconnect from work and do the thing they need would keep them calm, granting an easier return when normality returns. On the other hand, requiring the need from someone while they’re already stressed may cause resentment and most definitely add stress.

What can the individual do? #

Not be a SPOF. Mentor, teach, speak, document. Don’t keep anything only to yourself. I once heard: “Write your code as if the person who’ll maintain it is a psychopath killer who knows where you live”. It’s looking at the same issue from different angle: You don’t have to fear others who’ll need to maintain/modify your code, you want to enable others to be comfortable with your areas, as they’ll be able to cover you. Moreover, you could then consult with those people on design, coding, whatever.

Set clean boundaries. Setting clear expectation is good in the team level, but also in the personal level. If I have to take time off, but I can (and want) to read notifications and reply at the end of the day - I could. I just need to communicate this to the team, so people could expect me to do that. Similarly, I should communicate that I cannot connect at all and I’ll get back when I get back. In that case, people would expect different things. The important thing is that people will be aligned on the expectations.

What should everyone do? #

Come to terms that unexpected things will happen. Things will have to change in a very short notice - and actions will have to be taken accordingly. I believe that having a contingency plan in good, but even having guiding principals is good enough. That way, when shit hits the fan, you have your guidelines to help you navigate this situation. During these times, it’s likely that unlikely things will happen.

Best of health to everyone.