Bob: he comes in, he does his work, he goes home. He's a good productive developer.
Jane: She comes in, does her work, it's always documented and well tested. She is happy to roll up her sleeves and help the people around her out. She will pause to help you even if it means she gonna finish up at home.
Your boss asks you: Your call who do we hire. You're not fucking picking Bob.
Dont be Bob.
Don't be Jane.
Yes, this is why people start their own companies, and cash out.
>> Where do you draw the line in not being exploitable though?
Boss makes a dollar, I make a dime, that's why I shit on company time... as the old adage goes.
The reality is that giving you a job only works if the company makes money off of what you do. If it lost money or broke even that would not be worth it. You're always being "exploited".
If you want to feel equal, there are plenty of companies that are collectives (mondragon look it up). I have a few projects going on right now that are structured like this. If one of them "takes off" it's a very even distribution for all involved as long as they are working there.
The beauty of capitalism is that if you hate how companies are run you can and should go run your own with the rules you want. If it was very equal, then everyone is incentives to go above and beyond... your still not gonna hire bob!
While I would agree with a softer form: "don't be a 9 to 5 clerk, do what is needed, including occasional long hours and weekends", if someone needs to regularly stay late it's a problem with the management, not with the Bob. My 2c.
The balance is in being both: good, productive, amicable, helpful to others while also knowing that you deserve a life outside of work.
This infatuation with killing yourselves for work (mostly Americans but also in Brazil and some other cultures) have is really not healthy, to yourself and to other workers that you put under pressure because you do more than what you're paid for. You're not being a great employee, you're being an exploited employee, and leaving the door open to normalise this exploitation to others that might have other priorities after working hours.
From my time with leading teams I wouldn't hire Jane, I have done it before and eventually the team falls apart because others feel pressured to work more than they are being paid for/willing simply to keep up with the Janes of the world, it crumbles team morale.
Jane works hard but puts in long hours because she's just not very good and has to hustle to keep up even on basic tasks. She's helpful and kind to others because she understands their struggles, but can't hack new tech as well and will ultimately pause to help. Her well documented, working code takes 3+ weeks longer, and no one cares about Documentation.
It's just something we pretend cannot happen in software.
Most industries don't want anything like software's "death march," "sleep under your desks," "eat pizza" cultural ideals. Well, pizza is maybe ok once in a while.
Who's going to burn out, Bob or Jane? Bosses, often completely untrained bosses who just "know" how to boss, say they want Jane, but they're probably better off with Bob. Assuming they want stable long-term businesses, of course.
In your scenario it's likely that Jane becomes a boss soon and hires people with her own "work ethic." That sucks. Don't get Janed!