--

This does no good, because managers, smile, nod, and immediately forget. And then at the next planning session, they always prioritize feature work over knocking out tech debt.

IME, it never pays to compromise on good engineering principles. Usually the bill comes due within a couple of weeks, not way out in the future like people imagine. The good news is that good engineering principles lead to code that's easy to understand, with tests written up front that capture the intent.

You also seem to imagine a world where engineers are able to create simple code more easily than they do "overengineered" code. The truth is, it takes a lot of extra time and energy to write the simple code that you think would have been better than the "overengineered" version you didn't like. They didn't write simple code because they weren't given time.

--

--

Amy Blankenship
Amy Blankenship

Written by Amy Blankenship

Full Stack developer at fintech company. I mainly write about React, Javascript, Typescript, and testing.

Responses (1)