Do you find yourself often fighting the same fires over and over again? Does it end up taking up so much of your time that you find it hard to get anything else done? If so, then you may be fixing the symptoms of a problem without really addressing the root cause. This situation is all too common in engineering organizations and reminds me of a fable I heard when I was a wee little lad. The fable went something like this:
There was once a small village that existed at the bottom of a steep hill. The village was an idyllic place to live as it was filled with friendly people and squirrels.
Friendly People and Squirrels
There was just one small problem. At random intervals throughout the day a car would come careening down the hill running over villagers and squirrels alike.
Now these cars were always empty, devoid of any drivers or passengers, and left the villagers with a sense of dread. After a lengthy vNPS process, that stands for villager Net Promoter Score, it was discovered that getting run over by a runaway car was almost unanimously considered a bad thing and villagers were reluctant to recommend their friends live in such a village. Based on this data the elders decided to do something about this vehicular vexation.
Under the guidance of the elders, the villagers tried everything they could think of to stop the runaway cars. They installed speed bumps, which caused the cars to go airborne taking out sparrows and seagulls, before inevitably landing in a fiery explosion. They installed a concrete wall at the base of the hill, but every time the cars slammed into the wall, they shot hot metal shrapnel everywhere and scared all the squirrels who would immediately flee to the nearest tree and compose angry 280-character squeaks on Squeaker.
Squeaking on Squeaker
The villagers even installed a state-of-the-art alerting system that would immediately notify every villager, and squirrel, of impending death on wheels. In the end though, the villagers found the alarms disconcerting and the squirrels ignored them. What was worse, the cars had started coming down the hill with greater frequency.
Desperate for a resolution, the villagers finally decided to brave a trip to see the old grumpy hermit who lived at the edge of the village. It was rumored that this hermit was a software engineer who once worked at a company that dealt with these man-made-murder-mobiles and maybe they could propose a solution. Ignoring the ‘My Other Computer Is Your Computer’ and ‘Weeks of Coding Can Save You Hours of Planning’ signs hanging from the hermit’s fence, the villagers entered the hermit’s yard. After accepting the appropriate number of kisses from the hermit’s pet corgi, Cogs, and bestowing the hermit with the appropriate amount of triangular salty chips and sugary carbonated sodas the villagers were granted an audience.
The Hermit's Yard
The villagers went to great lengths to explain the problem and everything they had done to lower the vehicular manslaughter rate in the village. When the villagers had finally fallen silent again, the old grumpy hermit got up and started walking towards the steep hill. The villagers cried out after the hermit wanting to know what they should do, what innovative new contraption could the hermit design that would save them from their troubles. The hermit stopped walking, turned around, and said:
“I’m going to the top of the hill to see why those fools are not using their parking brakes!”
The Five Whys
If you are like me, or the villagers in our story, and fighting repetitive issues on production it is probably because the root cause has not been addressed.
At ACV we use the ‘Five Whys’ analysis to dive deeper on problems and truly understand the root cause of issues. The analysis is simple to learn, just ask ‘why’ five times in a row.
The moment Timmy's mom learned he would be an excellent engineer
Here is an example:
“Our website is throwing 504 errors”
1) “Why is the website throwing 504 errors?”
“The server the website runs on is down”
Now if we stop our analysis here, we might believe that we have a hardware problem, unreliable servers, but watch what happens if we continue asking why.
2) “Why did the server go down?”
“Well the server wasn’t properly maintained”
3) “Why wasn’t the server properly maintained?”
“The software engineer who maintains it quit to go live in a small village I think and no one else knows how to do it”
4) “Why does no one else know how to do it?”
“The other engineers haven’t been trained”
5) “Why haven’t the other engineers been trained?”
“We simply haven’t dedicated the time to doing the training.”
Now we see that what seemed like a hardware issue is a training problem. In this example, instead of replacing the server for a more reliable model, that probably wouldn’t be properly maintained leading to another outage, the company could better train its engineers.
Moral of the Story
Now if the fable above sounds familiar to you, it may be because it is based off a similar tale called ‘Babies in a River’. In this instance I have taken some creative license with the story since ACV deals with cars and not babies, which is a good thing since baby auctions tend to be frowned upon.
No matter which story you prefer, the moral remains the same. Sometimes we get so caught up dealing with the symptoms of a problem that we never bother to address the true source of the issue.
Consider using the ‘Five Whys’ analysis to go upstream, or uphill, to snuff out a problem at its source.