Do you have insatiable curiosity and are driven by a relentless pursuit of the truth? You might make a great problem solver, but be careful how you deal with your findings!
I’ve been called a “bulldog” with problems; never letting go until I’ve found the root cause. I also have a curiousity that drives me to “look under rocks“, where nobody else has looked. In one of my favourite books, “The Secrets of Consulting“[1], the author calls the condition “Optimitus” or the “..inability to resist solving problems“.
See my previous article, Look Up the Stack! and you’ll see that often the problems are application issues.
If your investigation ends with, “there’s an application bug“, your operations colleagues may be happy; your engineering colleagues, not so much.
There’s Always a Problem
From that same book[1], “In the culture of management, the worst thing you can do is admit to anyone that you have a problem you can’t handle..”
There are several problems with finding application performance and/or reliability issues. You (and operations) may feel heroic, but..
- The problems (software bugs) may have been long standing (years even) with applications. They were missed by engineering, QA and, very possibly, embarrassing to the these teams once found by you and operations.
- The issues, if known, may have been researched by engineering to find answers, possibly also for years. Engineering might have blamed other things or requested additional hardware to solve the problems. Also embarrassing if it turns out to be an application issue.
- The business unit (i.e. marketing, and thus engineering) are constantly pressuring (accelerating/agile) these days to deliver new “features” to the products. Having to stop and fix critical bugs slows this process down as they need to adjust delivery schedules and reallocate resources to maintenance.
- Lastly, a subtle issue is that software engineers hate maintenance; they would much rather work on “new stuff” than fix “old stuff”.
If you do have the “problem solver” mindset in operations, make sure that you have the backing of an Operations Management with Backbone or it could end up being a people problem. i.e. You may find yourself friendless on the other side of the fence (i.e. Engineering and ultimately the BU).
Or, there is The DevOps Alternative.
[1] The Secrets of Consulting; Gerald M. Weinberg, Electronic version