How do your teams take accountability for previous poor decisions that cost the team?

Posted by DirtyOught@reddit | ExperiencedDevs | View on Reddit | 28 comments

joined this small engineering team where there’s no real tech lead, no clear ownership, and decisions basically get made by whoever speaks the most convincingly that week. Since everyone but myself is young, no one knew when they were doing the wrong thing. And it is absolutely catching up to us.

A while back, the team decided to use their “tech debt allocation” to do a completely unnecessary framework upgrade. And not a small one. They pointed to the new cool things the updated version gave us.

Fine. But our app doesn’t use any of that. Didn’t need any of that. and the old version worked PERFECTLY fine.

But instead of spending that time on real pressing matters or writing a single test, they poured it into a vanity migration no one needed.

They got like 1/3 of the way through it, realized it was huge, paused it, and then just… never touched it again. For months. So we ended up with this half-migrated, fractured, Frankenstein codebase that’s now causing actual production issues.

Now I’m the one who has to finish the rest of this monster migration just so we can fix these issues caused by it. And apparently I’m the only one absolutely pissed about it. Everyone else is just like:

“Yeah that happens, engineering is messy lol.”

No. This isn’t “engineering is messy.” This is what happens when no one owns decisions, no one is accountable, and people make giant architectural changes because they sound cool rather than because they solve a real problem.

Meanwhile my time and days are getting shredded by bullshit decisions that never should’ve been greenlit in the first place.

How do you handle accountability in a situation like this?

If I press and ask why we did the migration, I’m an asshole and “it’s already half done so what’s the point at complaining”. And Yes I like “blameless culture”.

But a team with no accountability is arguably worse.