Even though I like my job (seriously, I do!), I'm very strict about keeping a healthy work-life balance. After all, I work to live; not the other way around. I guess this makes me a "9-to-5 developer" or a "5:01 developer", or whatever you want to call a nerd who's good at time management. I put in my 8 hours a day, 5 days a week, and then I go home. Work is already second only to sleeping in how much of my life is spent on it, and I see absolutely no reason to tip the scales any further in the wrong direction than they already are. I simply cannot imagine lying on my deathbed and thinking to myself, "gee, I wish I'd spent more time at the office."
Does this make me a lesser developer? A lesser employee? I hope not. I think I'm pretty good at my job, and I take pride in this fact. As long as I'm in the office, I'll try my damnedest to be the best software engineer I can be. I have my professional pride, same as you. I want to do a good job. I want to create efficient solutions to interesting problems. I want to keep growing and learning new things. But as much as I enjoy my work, I also just want to go home at the end of the day. And even then, I'll still occasionally spend my own time reading up on new things, or tinkering with personal projects. Not because I have to, but because I genuinely like this stuff. I just have my limits. At work, I simply put in the time that I'm payed for. Is that not enough?
In my career so far, I can count the instances I've had to work overtime on one hand. Which is how it should be: overtime should be the exception, never the rule. And as long as you're compensated fairly for it (either through time or money, though I prefer time myself), incidental overtime for valid, urgent reasons is acceptable. However, it seems like there's plenty of developers out there that work a different kind of overtime: one which is voluntary, and takes place on a regular, sometimes daily, basis. And I'm not talking about pulling all-nighters. No, this voluntary overtime is much more subtle. Maybe you stay an extra half hour today because you're almost finished with this piece of code anyway, and it would be a shame to quit now. Perhaps you've not had a very productive day because of some live-site incident and you decide to stay an extra hour to catch up. Or you finish up some work on the couch at home, because you didn't get the chance for it at the office today. These things might not always feel like overtime, but that's what they are. And they add up.
The thing that never made much sense to me about working voluntary overtime is the simple economics behind it: there's no getting around the fact that you're giving away your time for free. What kind of message does that send to your employer? You might think they'd be happy with the work you're doing for them. And you're probably right. But at the same time, by working for free, you're also telling them, "I'm not worth my paycheck." You're effectively cheapening yourself, and how much your time is worth, by thousands of Euros/Dollars/Pounds each year.
Let's illustrate this using a simple example. Let's say that instead of working the 40 hours each week that you're payed for, you're actually making 42-hour weeks (a meager 5% overtime). That might not seem like a lot, but over the course of a full year this comes down to roughly 96 hours of your life that you've given away for free. That's 12 8-hour working days! For free! I'll bet your employer is happy about that, but are you? Is this really the best use of your time? Can you think of nothing else?
There's nothing wrong with enjoying your job, but please, don't devalue yourself. There's an infinite amount of work waiting for you at the office. Don't try to do it all in one day. Go home. Go play. Go do the things in life that really matter to you.