It is an interesting fact that some of the principles of Agile engineering have come out of the Japanese auto industry. Iterative development and Lean are just some examples. Another interesting concept is a root-causing technique known as The 5 Whys. The basic idea is to keep asking why after getting past the immediate problem. Doing so can lead to uncovering a much broader problem, which if solved would solve the original symptom and then some. Let’s say the floor is wet. An example of the method could go something like this:
The floor is wet!
You can go on of course, but you can see how 5 questions get you to a much broader problem.
One parallel I find myself drawing recently is between seniority of an engineer and the number of whys they routinely ask when dealing with problems. College hire and junior developers will typically simply solve the problem reactively, asking only a single question. More senior engineers will see deeper into the root cause of the issue and solve that problem instead thereby saving others time as well.
This is obviously only a single dimension of growth, but can be a good way to gauge someone’s level of insight. So ask yourself, how many whys do you ask in your everyday tasks and whether you peer deep enough into the problem you are facing. This can often unmask problems you either didn’t see or can lead you to question some assumptions you haven’t questioned in the past but which cause you or your team lots of pain. Coupled with courage to answer those additional whys you can succeed.
Disclaimer The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.