As for your latter point ... don't know. When I was "junior" the talent shortage was dire. When I was "senior", I wouldn't put up with such things, but even in cases where I got recruited without having much of an idea of the workplace culture, I don't ever remember a "you should be thankful you are allowed to work here" attitude. Might have been luck of the draw, although in plenty of those places a failure to have hired someone like me at the time would have resulted in the company dying, so....
ADDED: D.C. might be a special case: The culture is overwhelmingly influenced by government contracting, and the government is loathe to pay overtime. And contractors tend to get paid by the billed hour, so unpaid overtime costs them money. And at least compared to Boston a decade earlier, the time you spent in the office was a greater factor in judging your performance.
With that said, I don't really mind the long hours if I am properly compensated. It's not the long hours that bother me. It's the thought that I have nothing better to do than to serve the company at any time of the day. Employment is a mutually beneficial economic relationship. Out here, it seems that a lot of employers think the employees should be thankful they are allowed to work there.