Justin James
2 min readJul 8, 2023

--

I am *so glad* this is the direction you took this! I am sick and tired of the constant "it's just a fact that we need to just shut everything down and refactor" or "why doesn't the business want to do things in a way that leads to technical excellence?" posts here. The answer is very obvious: refactoring, "doing things right", etc. is often far more expensive than the value delivered to the business! Like if it takes you 10 hours to refactor some code that will save you 10 minutes of frustration when you edit that code once a month, it will take years to pay for that refactoring. And while it may satisfy the "I want to do things right!" instinct, and make future maintainers happier, there is negative ROI there.

This is something I have seen time and time and time again since I started leading teams. Developers only see the technical merits of things, without linking them to the business' need. It's like if someone insisted that I need to buy the best possible skis if I want to be a champion skier, and meanwhile I have take 2 lessons in the last 5 years and still don't know how to ski.

So eventually, unless well-managed like you describe here, these developers eventually get tired of seeing the endless problems and challenges and no desire from the business to address them, lose motivation, just put in the bare minimum effort, and eventually either accept being mediocre, or leave for somewhere else, only to repeat the cycle.

The only places I have ever seen that actually get to live the ideals of constant refactoring and going off on technical explorations, and similar "this is the way" type stuff, are people in companies with a money printing press in the basement throwing out massive revenues at a massive margin (Google for example), or companies with a huge amount of "free" money (like VC-backed companies, and that party is OVER)... basically, in any place that has a huge amount of money per employee, they can afford this. As soon as a company needs to really focus on making a profit, and most employees need to have their time dedicated to that... "technical excellence" is a nice goal, but not something the business actively works on daily.

J.Ja

--

--

Justin James
Justin James

Written by Justin James

OutSystems MVP & longtime technical writer

No responses yet