Perhaps the most valuable but difficult-to-learn skill any
technical person could have is the ability to troubleshoot a
system. For those unfamiliar with the term,
troubleshooting means the act of pinpointing and
correcting problems in any kind of system. For an auto
mechanic, this means determining and fixing problems in cars
based on the car's behavior. For a doctor, this means
correctly diagnosing a patient's malady and prescribing a
cure. For a business expert, this means identifying the
source(s) of inefficiency in a corporation and recommending
corrective measures.
Troubleshooters must be able to determine the cause or
causes of a problem simply by examining its effects. Rarely
does the source of a problem directly present itself for all
to see. Cause/effect relationships are often complex, even
for seemingly simple systems, and often the proficient
troubleshooter is regarded by others as something of a
miracle-worker for their ability to quickly discern the root
cause of a problem. While some people are gifted with a
natural talent for troubleshooting, it is a skill that can
be learned like any other.
Sometimes the system to be analyzed is in so bad a state
of affairs that there is no hope of ever getting it working
again. When investigators sift through the wreckage of a
crashed airplane, or when a doctor performs an autopsy, they
must do their best to determine the cause of massive failure
after the fact. Fortunately, the task of the troubleshooter
is usually not this grim. Typically, a misbehaving system is
still functioning to some degree and may be stimulated and
adjusted by the troubleshooter as part of the diagnostic
procedure. In this sense, troubleshooting is a lot like
scientific method: determining cause/effect relationships by
means of live experimentation.
Like science, troubleshooting is a mixture of standard
procedure and personal creativity. There are certain
procedures employed as tools to discern cause(s) from
effects, but they are impotent if not coupled with a
creative and inquisitive mind. In the course of
troubleshooting, the troubleshooter may have to invent their
own specific technique -- adapted to the particular system
they're working on -- and/or modify tools to perform a
special task. Creativity is necessary in examining a problem
from different perspectives: learning to ask different
questions when the "standard" questions don't lead to
fruitful answers.
If there is one personality trait I've seen positively
associated with excellent troubleshooting more than any
other, it's technical curiosity. People fascinated by
learning how things work, and who aren't discouraged by a
challenging problem, tend to be better at troubleshooting
than others. Richard Feynman, the late physicist who taught
at Caltech for many years, illustrates to me the ultimate
troubleshooting personality. Reading any of his (auto)biographical
books is both educating and entertaining, and I recommend
them to anyone seeking to develop their own scientific
reasoning/troubleshooting skills. |