> I care about output.
I've got a personal anecdote, it's not meant as an attack on you.
Had a manager at BigCo. who claimed exactly that. That BigCo. was also the one who won awards for being model employer.
One time he decided he really-really wanted a raise at the next review and introduced a system of punishment where if you're late by N minutes you'll have to do N*P (Where P is number of people in the team) tasks from the backlog.
After work. Unpaid.
I was on vacation when this was introduced. Got into minor traffic accident soon after I came back. Got assigned the tasks. Put in my resignation soon after - the man could not be reasoned with.
His arguments? I broke employer's rules being late. And the unpaid overtime part?
I asked him specifically at the interview 2 years before that if the company had unpaid overtimes. The answer was a resolute "No".
EDIT: Formatting.
I'm sorry, but I don't see how this relates to the parent. Your story portrays a hypocritical and abusive manager. That "rule" was not enforced by the contract, and you were not legally obliged to follow it. I would've been more curious to see what you tried to do or say to repel it.
Next Monday what I said was roughly this: "We've got more important tasks than the backlog now, let's discuss how we can fit them in later today". What I heard next were profanities saying that I literally fucked up and I have to do them after work.
(Mind you, this was not 1-on-1 but a team meeting, so the entire team was present, 3 more people) Next I asked whether I would be paid for that work and the answer, of course, surprised nobody. I asked him whether HR would share his point of view (This is a company who cares about the image of a model employer), to which he said that I come to work later than the hours that are in my employment contract. (This was a guy who supposedly cared about the output, not asses in chairs and he was OK with people showing up later) I grew tired of this attitude and politely told him that I already made arrangements for my next job and I quit.
Transferring my work to the team was smooth and I left in good spirits.
I'm fortunate that my manager actually does act how he talks. Personally, I don't care too much if you value the presence of my butt in my seat more than how much I get done; it's your dime, so to speak. However if you lie to me about what you are paying me for, then neither one of us is going to be happy.
every software engineer with a few years experience has a stack of these anecdotes.
they happen because non-technical management don't understand the creative nature of coding, so treat it as an exercise in numbers - "if I have x coders working for y hours then I will get x * y development done".
trying to persuade them that it's not like that, and (for instance) adding one more developer may reduce productivity over the team as the communication and training load increases, is a really hard problem
In this case it was not about ignorance or incompetence, it was about greed.
but we are part of a greater organisation, and by the time a problem arrives at our part of the system, it probably needs code written. If it could be solved by other means it would have been before it ever gets to us.
I care about output. We don't pay people to sit at desks. We pay people to write code. Writing code is a creative endeavour - good code can occur in the shower as that sudden realisation strikes about how to refactor the messy state engine.
Insisting that people sit at desks until the boss leaves is a really strong signal of bad company culture, and probably bad code.
Because development is creative, it is affected by mental state. Worrying about the kids or the bus timetable is counter-productive (you're not thinking about code, you're thinking about what your colleagues will make of you running to the bus). Good development environments minimise these worries, allowing developers to focus on writing code.