If you are hired as a full-time, salaried employee of a company, the default expectation is that the company is trying to buy ALL of your professional output. They expect that you treat your position not just as a job where you work so many hours or do just the tasks that you are asked to do, but that you take more personal responsibility for doing the very best job you can, improving your own productivity, and making the company function better and more efficiently. Your work for the company is not just a job, it is a part of your career. You're not just an hourly assembly line worker, you're part of the team, an insider, and remember, "We're all in this together."
The company managers don't care about you and your work/life balance, only the work they can get out of you. And in terms of efficiency, that means paying you the smallest salary and benefits that you'll accept. And it means telling you whatever is necessary to get you to be as productive as possible. If they can get you to inprove processes or something, even better.
Also, with pretty much everything in life, including software development, there IS a correlation between hours worked and quality/quantity. All other things being equal, the one who spends 40 hours working, not just typing, but thinking about the problem, fixing bugs, finding new ones, improving performance, refactoring to improve structure, et cetera, will produce work output that is higher quality or in grater quantity than the one who puts in 30 hours. And I know you're the special snowflake who can do a better job in 30 hours than that other guy can in 40, but that's irrelevant. They are paying you a complete salary, so they can demand that you put in complete effort. The good news is that once you can prove that you're producing more in your 40 hours than the other guy is, you can demand a higher salary or take your talents elsewhere.
Edit: Fixed grammatical error.
The company managers don't care about you and your work/life balance, only the work they can get out of you. And in terms of efficiency, that means paying you the smallest salary and benefits that you'll accept. And it means telling you whatever is necessary to get you to be as productive as possible. If they can get you to inprove processes or something, even better.
Also, with pretty much everything in life, including software development, there IS a correlation between hours worked and quality/quantity. All other things being equal, the one who spends 40 hours working, not just typing, but thinking about the problem, fixing bugs, finding new ones, improving performance, refactoring to improve structure, et cetera, will produce work output that is higher quality or in grater quantity than the one who puts in 30 hours. And I know you're the special snowflake who can do a better job in 30 hours than that other guy can in 40, but that's irrelevant. They are paying you a complete salary, so they can demand that you put in complete effort. The good news is that once you can prove that you're producing more in your 40 hours than the other guy is, you can demand a higher salary or take your talents elsewhere.
Edit: Fixed grammatical error.