Re: Bit klunky, but...
I see you've never worked as a programmer. That's not how it works.
Here's an example. I have a task to do. The code we have that is involved is terrible. Nobody disagrees with this; we all think it's bad. I could overhaul this for a better version, completing the task some time in January. I could also patch around the problem that prevents the completion of my task, write the new stuff, and complete that next week. We're doing the next week plan.
It's not about needing the task completed. This isn't time-sensitive. It's not about disagreement about the overhaul being useful. However, they want me to be able to work on different things in December, and by patching, I'm not introducing any really big problems (no risk to safety, security, sensitive data, just the code being harder to maintain and significantly uglier. I don't have the freedom to tell them that I'm ignoring them and starting a redesign on my own, and if I did, there's always the risk that I discover around the beginning of January that there's a problem and it's going to take longer than we guessed, which wouldn't go down well. I have had lots of things I thought were good ideas, but when there's a team working on something, that idea has to be sold to them and to management before you can just do it. Even if you're in a senior position where smaller ones don't need anyone's approval, you still can't take out large chunks of time or make massive changes without notification and some kind of oversight.