I work in the software industry, have a 10 minute commute, breathe fresh air, make enough money to support myself, my colleagues are my friends, and my boss has never once slighted me. A shit job is a shit job, but you don't have to leave software to find a job that isn't shit.
I've been doing software for over a decade and none of my jobs have been shit. Perhaps I've just vetted potential employers prudently enough (For example I've said in interviews I consider crunches to be a management failure - you need to say it with true compassion though and not sound like arrogant asshole)
Sure there are. But if you compare available jobs the situation might be different.
Here (EU) it is much easier to find a non-sucking job as a developer as opposed to being a waiter. The people who are trying to find developers have finally figured out that it pays to be nice, if for no other reason, because people talk. If you screw your workers over, you have trouble getting new hires. And it really doesn't cost you much, if anything, to make good working conditions.
EDIT: sorry, software sales is different... probably the same here. :(
And, while I haven't worked in that department so I can't really say for certain that the team leads don't slight the people they're managing, it's a small enough company that the culture is pretty consistent.