4

In The Phoenix Project the author describes an interesting antipattern: Brent is a super-important dev-ops engineer that personally knows the details of every new and old implementation and setup, but he does not share, document or distribute his knowledge. Ultimately every small task or large project crucially depends on him.

While this Brent is hailed as a hero by the whole organization, the main protagonist of the book recognized that this is an anti-pattern and starts to break down this information "person-silo" by shadowing him and documenting his knowledge.

Is there a name for this antipattern? Is it widely recognized?

closed as primarily opinion-based by gnat, Martin Maat, Blrfl, Robert Harvey Aug 12 at 15:04

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 4
    Low bus-factor? – marstato Aug 12 at 9:41
  • @marstato the difference is the employee hoarding information is acting as a bottleneck. He does not have to leave the company to hurt it. – daniel.sedlacek Aug 12 at 10:17
  • 1
    Single point of failure. – Martin Maat Aug 12 at 11:29
  • 1
    VTC; this isn't a problem that's specific to software engineering, nor is it any kind of pattern, anti or otherwise. – Blrfl Aug 12 at 12:37
4

There are several terms for this anti-pattern.

As marstato pointed out in his comment, it's a 'low bus factor' - the bus factor is, according to wikipedia:

The "bus factor" is the minimum number of team members that have to suddenly disappear from a project before the project stalls due to lack of knowledgeable or competent personnel.

A bus factor of one is synonymous with a single point of failure, as Martin Maat pointed out in his comment.

To answer your second question, if this is widely recognized: Yes, it is a common anti-pattern in organizations all around the globe. The reasons are often

  • Fear: If somebody else could handle my job - am I let go?
  • Pride: I'm the hardest working person in the whole company. Everything will fold if i quit.
  • Accident: People all around the "hero" have left the company and nobody made sure that knowledge gets spread over several persons.
  • Greed/management frugality: the managers don't want to (or can't afford to) hire a second person for the job.
  • 1
    Don't forget "greed": the managers don't want to hire a second person for the job. – nvoigt Aug 12 at 11:36
  • 1
    i've expanded it a bit @nvoigt, thanks for pointing it out! – mhr Aug 12 at 11:38
  • 2
    I refer to this as "hero-based" development. Often the hero is not only the person who solves problems, but the main person who creates them too. For example, no one can understand the hero's code because it is convoluted and over-engineered or in technical terms: it sucks. People tend to notice that the hero is always fixing the system when it crashes but don't tend to realize that the hero is the one who created the system that keeps crashing. – JimmyJames Aug 12 at 15:12
  • Yeah, it's a theme - but i don't think it's always the fault of the (lone) developer, slaving away and keeping the dumpster fire running (see accident/greed). Also: Pride driven Heroes tend to describe themselves as 10x programmers (in my experience). – mhr Aug 12 at 15:23

Not the answer you're looking for? Browse other questions tagged or ask your own question.