Can we agree for this post that money, energy, time, and effort are all forms of power? Like literally, if I wanted to build a building, I am going to need tools, skills, materials, labor. I can use the most liquid form of power I have (cash) to acquire all these things, or I can use a much less liquid form of power (my time) to harvest, extract, refine, learn, and build my building myself. Usually, economies of scale mean it is dramatically more efficient for me to specialize in one way of converting time into liquid power. Then, when I need something, I simply pass that money on to someone else who is also a specialist.
Now you know why I don’t quarry my own stone to build an amphitheater in my back yard.
When you work a job, you are converting one form of power you have: time (and usually skills), into another much more liquid form of power: money. One can extend the model to include calories and shelter (the power to sleep safely) along with time and skills. Great, this is just basic economics, right? You need power (money) to buy power (food and shelter) to buy power (time) to convert back into more power (money). Since you are “harvesting” something finite and therefore scarce (time out of your short life), if you are disciplined and lucky, you can consistently end up with a net positive.
On to the point! I read a post today mentioning the "5:01 developer". It made me mad.
Ideas like this are so subtle they just seep into your psyche. I don’t think anyone would say under normal conditions, “I should really work for free today”. But, effectively, that is what this whole phrase is about. The phrase lets people who cram eight hours of work into ten hours “get back” at those that get the same work done in six to eight. To clarify, this title is not about “saving the company” or “giving back to society”; those are unusual conditions. No, it is a chastisement of developers who do not “give back to the company”. Sort of a tax, for the privilege of getting paid to work there, you should, according to this ideal, just give back some of that power they gave you. Thinking about this with the power model, you should accept money to work there in exchange for your time, but, when the time comes, you should deliberately short-change yourself by giving them extra time. Like some sort of weird tip.
Hopefully this sounds as ridiculous as it really is.
Now, in that post, the author sort of backpedals a little bit, saying that what he really meant was a developer who stops thinking about development as soon as work is over: someone not passionate. The issue I have is the whole wording of that phrase assumes a passion for their job, not a passion for their craft.
I do not think it makes sense to demand every person be passionate about the job they are doing. There have been many times I have (even at a job I normally loved) done long, boring, and fruitless work. I did not do that work out of my passion for the “Mission: Save the World of Enterprise Banking”, but because I am a professional: I do what needs to be done to the best of my abilities.
I think professionalism is very important. In others I work with, I want to see the attitude that causes someone to stay abreast in their field. I want to be around those who keep their own saws sharp, who come in and work hard, and who push themselves and those around them to be best they can.
Back to overtime: in my experience, very few offices care enough about their developers to let them sharpen their saws at work, so why would you waste your precious free time there? Will they pay you more for it? Doubtful. Will they be less likely to fire you when times get tough? Maybe. Sounds to me like a lot of speculation. A lot of investment for a marginal or non-existent return. If you want more money: either ask for a raise, go take a raise at a new job, or work a second job on the side. Those have a direct impact on your income. Putting in extra hours hoping someone will notice and reward you for it makes about as much sense as assuming you will get a raise for wearing the boss’s favorite color every day.
Consider the person who stays one extra hour a day as an “investment”. The typical end of the year raise scale I have seen in the US in companies larger than 30 people is a 0-5% increase a year. Uncommonly does someone get more than that, and should not be considered a usual practice. The typical best you can expect is 5%, maybe a bonus (in four diverse jobs, none gave bonuses, so I haven’t considered them personally). Back to the extra hour a day. Not completely out there, not putting in a vast amount extra, right? Well, one extra hour is 12.5% percent more hours a day. But the most you can expect, on average, is 5%, if you are lucky! To put it in perspective, I have seen guys put in 12 hour days and get fired because the boss didn’t get along with them.
At a few points in my career, I worked longer hours. Once it was because I truly enjoyed the work and it was fun. Another time it was because I felt like the extra time was going to directly pay off as an investment (it didn’t). A few times I have stuck around to “wrap this off” or “help out with something deeply unusual that has to be done outside normal work hours”. I recently recommended to my little brother he work longer hours, as he was hired without many needed skills and on shaky footing with the boss. He worked out a deal where he spent two extra hours a day for a couple months reading and practicing to get “caught up”. His boss got to see his hustle when he was the first one in and last one out every day; he got to study away from the distractions of everyday life. In all circumstances, make overtime the exception, never the rule.
One last point. Before you think me a selfish jerk about my free time, know that I make it a daily habit to spend 30-60 minutes outside work advancing my development skills. I practice interactive rebases, work through awesome books, do online courses, advance side projects, contribute to open source, give local meetup talks, and learn new languages. These are the basics of what I feel is necessary to sustain and advance myself as a professional. If I simply worked a 45-50 hour work week instead, I personally would not have the motivation to afterwards stay so abreast of important changes in the development world. I would become much less effective over time, never getting any better. When the need for new paradigms or technologies arose, I would be so stuck in a rut that fear and ignorance would drive all my decisions.
Treat overtime like an investment, and make it wisely. You are literally mining your life for time, so make sure you are comfortable with your investment strategies.