Perhaps I don't disagree with your comment that "most" developers have to do things cheaply and quickly, but I think most anyone has ability to speak up in their environment and push for the changes they think are important. I've worked at a big, sprawling company and was still able to work against the grain and push back on requirements and things I didn't think made sense. I'm working at a company now where I can do the same things (this time with less pushback).
If you change your perspective from controlling your job or your company to controlling yourself and your career, then it makes it easier to pull back and make the decisions that make sense for you and the things you want to work on. Then the places you work at are just the vessels and opportunities to turn your ideas into reality. The onus is on you to determine your career — not your company's.