4 ms·
> #9 might be a symptom of a structural problem. If developers routinely encounter problems arising from technical debt, and are continually asked to fix those
by chooseaname 8y ago
> #9 might be a symptom of a structural problem. If developers routinely encounter problems arising from technical debt, and are continually asked to fix those problems, but are somehow never afforded the opportunity to retire the technical debt, that creates an aversion to the maintenance work.
I've seen a couple fresh grads come in with that attitude and get away with it. I think it is more personality type than anything. What I saw usually happen was they were allowed to work on a new feature as kind of a treat for joining, but after when tasked to start fixing issues from legacy, they flat out refused. Even taking it to the head of engineering and making a stink.
- logfromblammo 8y agoThere is a sweet spot. The boss can't hire new grads to work on it, because they can smell the manure from a mile away. So as long as you're willing to slap on yet another coat of superficial patches, they'll keep paying you to do it. That's an equally-bad symptom of the same problem, approaching from the opposite side. The structural problem still doesn't get fixed, because the developers aren't repulsed by it at a visceral level quite enough to kill it with fire or nuke it from orbit. It's just scary enough to scare off the competition. The technical debt is kept in place, so that people can live off of the technical interest payments. It's not an honorable living, but it is a living.
- chooseaname 8y agoYou're still stuck on "the code is bad and that's why they don't want to touch it." I'm saying, their attitude is bad and feel maintenance is beneath them. Every, and I mean every, development shop has some amount of tech debt. But even if the code is generally good quality, you have a subset of devs who think maintenance is below them. That's a bad attitude and people don't want to work with that.
- user5994461 8y agoIt's worse than that. All code instantly becomes technical debt the moment it's deployed. A development shop is almost entirely composed of technical debt, unless it never shipped anything.