Every year people publish lists of the hottest most in-demand IT skills. Some years it is new technologies like virtualization or containers, other years it’s understanding processes like ITIL or how to decipher compliance regulations.
But there is a more important skill for IT Pros that transcends the hot technology of the moment or whatever the latest soft skills fad is.
Do you know what it is?
It’s the skill of being able to reliably solve complex problems.
The trick to understand about reliably solving complex problems is that there is no single method that one can follow to reliably solve a complex problem. Each problem is unique, so being able to reliably solve such problems requires that you recognize that you will need to adapt to the specifics of each problem.
Correctly defining the problem
While there is no single method to reliably solve complex problems, there are some good general guidelines you can follow. Perhaps the most important step in solving a complex problem is correctly defining that problem. Put simply, if you don’t understand the problem, you don’t know what evidence to look for in diagnosing the specifics of the problem and what steps to take in resolving the problem.
In most cases you will be aware of the symptoms of the problem, simply because they allow you to recognize that there is a problem. In IT this might be that something is not working, has stopped working, or is working in an unexpected way.
Focusing on the right problem
Complex problems often remain unsolved because the person attempting to solve the problem is on expending energy pursuing a solution that solves a problem separate to the one they actually have. Except by luck, you won’t be able to resolve a complicated problem unless you understand that problem. So it’s important to spend time understanding the details of a problem before you try to solve that problem.
Multiple theories can explain the same data
The reality is that there can be multiple possible causes for a set of symptoms. Understanding that there are multiple possible causes is important because people often latch onto the first likely explanation for a problem. They don’t consider other explanations until they’ve absolutely exhausted all avenues associated with that first explanation.
You’ll know from your own experience that you’ve tried absolutely everything to solve a problem you’ve encountered. Eventually, only after you’ve given up, do you realize that there is another, simpler solution, staring you right in the face that works immediately. It was just that you couldn’t see that simpler solution until you’d given up on the first solution that came into your head.
Before pursuing a solution, consider alternative causes
Before investing time in a specific solution, consider what other things might have caused the problem you are trying to resolve. One of the most important factors in being able to reliable solve complex problems is being able to discard dead end hypothesis. This is very important because psychologically because most of us, when we decide we know why something is happening, look for evidence that confirms that decision.
If you look for something hard enough, you’ll often find it.
Rather than looking for evidence that confirms the hypothesis, many who are experienced in solving problems pursue the different approach of trying to disprove their hypothesis. So when you have a number of ideas about what might be causing the problem, instead of trying to figure out which idea is true, instead try to figure out which idea is false.
Try to eliminate all of the potential explanations for the problem before you pursue a solution. You may even find yourself in the situation that you eliminate all of your potential explanations as impossible. You then need to come up with a new explanation to explain the problem as your initial speculative diagnoses were off target. It’s certainly better to do that at the outset than it is to spend days or weeks pursuing each dead end completely.
IT is about problem solving
While we often learn about the specifics of technologies when learning IT, we rarely spend much time thinking about the best techniques on solving complex problems. While the above advice won’t guarantee you a solution, it will save you time because it gives you a better chance of eliminating dead ends before you’ve traveled too far down the wrong track.