DEV Community

Matthew Daly
Matthew Daly

Posted on

Does technical debt make burnout more likely?

I've been working on a large legacy project for just over two years, and it's been my primary focus at work. It's built in a now-deprecated PHP framework (Zend 1), and has an awful lot of technical debt.

I've experienced developer burnout in the past, and mostly know how to avoid it, but I've noticed it's considerably harder to avoid it with this project. The mental burden of trying to figure out what's going on at any point is much higher than with a project with less technical debt - the inconsistency between how different objects work and confusing names of variables and methods means I spend far more time figuring out what's going on, and it stresses me out. Also the so-called "flow" state of maximum productivity simply isn't possibe to achieve, so I'm far less productive than I would be on a better-written project, and the drop in productivity makes it more likely deadlines are missed, causing even more stress. Tools like Psalm are helpful in finding what items are and adding type hints, but they're not a panacea, and at the current rate it's going to be a long time before the project is in a state where I'm happy with it.

Have you noticed a relationship between working on projects with high levels of technical debt and burnout? Has a particularly bad project caused you significant stress, or have you seen a code base you'd be working on and not taken/left a job for that reason? And how can we get across to non-technical colleagues the effect a particularly bad code base can have on developer productivity and well-being?

Top comments (2)

Collapse
 
dfockler profile image
Dan Fockler

I think if you are measuring productivity by how many PRs you are making, you are in for a rough time. Most of your time in big legacy projects should be reading code and understanding how the parts go together (as bad as they may be) so you can change things without creating lots of problems. It's definitely a marathon and not a sprint. It's hard to measure progress in a situation like that so it's easy to feel burned out. You're probably making progress by understanding the complexity of the codebase, it just might not feel like it.

Collapse
 
seveneye profile image
seveneye

There should always be a fine line between insanity and looking for other work :D haha just kidding bro