Yeah, that is why people who have just graduated from school aren't senior developers.
The conversation goes something like:
Newprogrammer: "this is arranged in an awful way, the composition doesn't make any sense, and things are just plain awkward, we should refactor this heavily or just rewrite it from scratch, that should only take like a month or two"
Mgmt: "great, you have a week to get that done, and while your doing that, be sure you implement these new features"
Newprogrammer: *kills himself trying to refactor and add new features at the same time in a week and does a crappy job implementing and reverts a bunch of things that only got half done, because he's short on time, then quits in frustration because management sucks*
Mgmt: oh that is too bad, i guess its time to hire someone new....
Newprogrammer: "this is arranged in an awful way, the composition doesn't make any sense, and things are just plain awkward....."
Senior programmers know how to say "no"