4 ms·
I disagree very strongly with this even though I strongly support ideas like “choose boring technology” and “reliability is your number one feature.” The issue
by mlthoughts2018 6y ago
I disagree very strongly with this even though I strongly support ideas like “choose boring technology” and “reliability is your number one feature.”
The issue is that none of this can be decoupled from politics, and “maintenance first” tells you that the force with political power is some version of a Dilberty group of rent-seeking IT leaders who just want to be paid without having to do much work.
That has pros and cons compared to politics driven by product leaders with unrealistic ideas of shipping new features, but at least they have hustle, ambition, animation and lifeforce. I find the trade offs are worse with anti-ambition “maintenance first” IT leaders.
Setting IT maintenance as a core strategy, rather than something that serves a strategy, is complete death. Employees better hope they like the dead end career they have at such a company, because it’s going to cut them off from any lifeline to relevancy.
The company also better hope they are right in their estimate that a big mass of customers will be satisfied with just maintenance and reliability. If you are in any kind of competitive industry, advanced features or new tech that allows price cuts for your competitor are going to cripple you, and you will be way too slow and dinosaurish to recover or react.
Finally “maintenance mode” places tend to pay poorly. Not because innovation is unfairly paid better, but because they want to offer claims (but usually not realities) of work life balance and other fringe benefits, while just pay less, giving crappy 5% bog standard raises, no bonuses.
When an employee has hustle and ambition and wants to achieve correspondingly more and produce correspondingly more output in exchange for significant growth in compensation, they’ll just be given a line that they can’t be, in principle, because the company’s fundamental way of working is incremental maintenance. A career goal of ambitious projects is conceptually disallowed, along with any goals of related comp growth. So as a result, you can bet you’ll be working with a bunch of extremely mediocre colleagues, a lot of them only taking a 9-5 job that fits other obligations like family stuff, and figuring they’ve given up on ambition or wealth building and you should too.
It reminds me of a famous quote by TS Eliot when he grew sick of university life at Oxford (paraphrasing)
> Oxford is very pretty, but I don’t like to be dead.
- spockz 6y ago> Setting IT maintenance as a core strategy, rather than something that serves a strategy, is complete death. IMHO, this part is spot on. However, it also does not mean that we should only go for the new, shiny, things. There is great value in maintaining the foundation and keeping it running smoothly so that others can go ahead and build the shiny things. We should just be careful and deliberate in assigning some of the value of that shiny things also to the foundations on which the shiny things were build.
- mlthoughts2018 6y agoYeah, agreed. Maintenance, reliability and tech debt should be first class concerns. Product strategy should include them, allocate time for them and give clear guidance of the trade offs that drive prioritization of these lines of work vs prototyping, feature delivery, etc. Neglecting maintenance is a very bad idea, but setting it up as an enshrined cultural north star of an engineering department is actually even worse.
- blabitty 6y agoMaintenance should be just that, maintenance - something you attend to regularly to prevent future problems. The problem our industry has is that every approach to software has become a religious like cargo cult activity. In my opinion the cause of that is the consultancy-executive symbiotic nexus, consultants promise exciting silver bullets and executives buy in because they can always blame the consultants if it goes wrong.
- snidane 6y agoIf you get too good and maintenance, you will be that senior guy keeping thing running while junior will get to build those nice and shiny things, keeping up with latest tech and work on their job transferrable skills. It's always a dilemma: do I get good at maintenance and never be promoted to a sexy new project, because I am too good at maintaining that system, or immediately start working at new things so that I never become the maintenance guy. I think that is the dilemma which stands behind the aversion to maintenance at companies.
- spockz 6y agoThis is a bit of a chicken and egg. Why should it be that seniors are the only ones keeping stuff rolling and the juniors are adding extra features? I’ve also seen the reverse happen. Senior engineers only wanting to do new stuff and juniors being tasked to do all the “boring” maintenance part. The problem is that when you consider maintenance to be the keeping running of every individual component as it is currently doing then it will be boring. If you consider maintenance the art of keeping the whole foundation geared towards being able to run smoothly and accommodating new features, now that is a challenge. :-)
- rini17 6y agoHustle, ambition, animation and lifeforce is likely to result in burnout, even PTSD. It is also unsustainable in other ways. It has its place but not as universal ideal.
- mlthoughts2018 6y agoNo they don’t lead to burnout. Those are just basic attributes of working hard and taking healthy engagement. More like the advice of, “hire people who give a shit.” Burnout comes from other things added onto a situation. Believe me I’ve seen lots of severe burnout at places that are “maintenance only” no-ambition shops. Burnout is much more about disenfranchisement and a big gap between motivation and requirements. Rarely is burnout a function of raw hours worked (and when it is, it’s easy to solve).
- codebolt 6y ago> Setting IT maintenance as a core strategy, rather than something that serves a strategy, is complete death. Employees better hope they like the dead end career they have at such a company, because it’s going to cut them off from any lifeline to relevancy. I think you have it completely backwards. As an example, having competency maintaining core banking systems is a far safer career long-term than working at some fancy crypto fintech. Work on stuff that's actually important, don't waste your best years on the hype-train of the season headed nowhere.
- mlthoughts2018 6y agoCore banking systems are some of the most horrendous examples of legacy tech debt and duct tape barely keeping a system from falling apart in the whole industry. Pick any large bank, BoA, PNB Paribas, Deutsche, Goldman, JPMorgan, etc. and they all have a widely known reputation for paying poorly, requiring significant extra work hours, offering zero career growth, offering zero opportunity to work on interesting projects, and have some of the most bureaucratic environments with no freedom, no ability to innovate or introduce new ideas, of any industry. If you want to be underpaid, constantly worrying about sword of Damocles layoffs, pushed to work unpaid overtime all the time, all while your job causes skill atrophy and you become unemployable anywhere else because you only do maintenance on a mind-melting abyss of legacy tech debt ... then work in banking.