Why Office Gurus Are Bad (And The Buses Who Hit Them)Filed Under Human Factors
Out of necessity, it is common for software teams to have its members silo themselves into specializations. One person maybe, the “reports” guy, while another maybe the “database” guru. Allowing members to specialize can be dangerous for a number of reasons.
1. Presents the “Hit By Bus” Test
If you haven’t heard of the bus test it’s pretty easy:
If person X was hit by a bus today how well would your team survive?
I have seen teams fail this simple test time and time again. As a need for survival, either individuals choose (or are assigned) to work in very niche partitions of a project or in a legacy code base. The result leads to a knowledge bottleneck which can present dangerous situations to a business.
No lie – I met a person who self-obfuscated all of his variable names to undecipherable “a1″, “b2″, and “zzz”. He kept a secret print-out map such that only he knew the real variable names. He said it was for “job protection”. He left the company on his own freewill, taking the cheat sheet with him, rendering the code base worthless and costing the company hundreds of thousands of dollars to replace.
2. Creates Tunnel Vision
When people specialize they tend to get tunnel visioned into their niche. No longer does the generality of development interest them, but only their one specific technology. As the saying goes,
If all you have is a hammer, everything looks like a nail. – Bernard Baruch
Wanna hear about another guy I have met? Of course you do…
Once upon a time, I knew this other guy who only knew Lotus Notes and XML. He spent all his time and energy learning every single aspect of both technologies, but not an ounce of energy towards different solutions such as Java, .NET, or Python. The result? Every single project he was given resulted in leveraging Notes and XML. Guess what happened next? Yep, he left his company too…thankfully he took his code with him…
3. Yields Lack of Community
Developers by nature tend to stay in their shells, and if given a reason will do so even more. As a result, having office gurus does not lend itself to a sense of community or team. Since each is an individual with no technical peers a dog-eat-dog environment starts to build.
So what is the antidote to the office guru? A healthy blend of:
- Knowledge Sharing
- Open Minds
- Code Reviews
Recognize office gurus for what they are – liabilities. Take advantage of the situation and learn from their craft as well, not only will you extinguish any knowledge bottlenecks, but you will also become more valuable to the company than the office guru.