If your employer expects constant overtime from you, start looking. When you have an offer from a sane place in hand, quit your current job. On the way out, tell them why. It might help the others who are still there.
In a world that complains about a shortage of programmers, you have more leverage than you may think.
There is risk involved in doing that. I've seen a lot of people come back to their former employer after trying out a new place and not having it work out. If you give a real accounting of your opinions in an exit interview, that escape hatch from the new gig would probably close.
The amount of leverage you have is heavily dependent on the perception of your bosses. If your bosses know how rare a good programmer is and truly do value you, then you shouldn't have these problems anyway, and I'm sure they'd rectify them ASAP if you brought them up. Many of us don't work for such enlightened people, though.
If you have a reasonable basis for assuming that the problem will in fact be short term, sure. If the management is insane, and isn't going to recover sanity soon, then you're likely to just get fired as a complainer. That leaves you no income while you're looking for a job, which can be uncomfortable.
In a world that complains about a shortage of programmers, you have more leverage than you may think.