How many hours do you work a day (developers)?
After 3 in-place jobs, I've been working at home for three months now. One thing I have noticed is that I can deliver a comparable ("samey") amount of progress in less hours of pure work.
At my office-located jobs, I waited to complete 7-8 hours of work (excluding chit-chat, etc) in order to feel satisfied. Now I can do with 4:30 on average. For me being interruption-free is a huge boost.
Personally I do believe in measuring effort in work-hours. Assuming you feel optimal (which I constantly make sure of), the more time you spend the more you get done. Also, 90% of webdev does not require that much creative hard-thinking imo.
My question simply is - do you find 4:30 of work a day acceptable (for you)? And marketable (for employers to accept it)?
Anyway, feel free to post how many hours you work, and what you think about it.
56 comments
[ 4.4 ms ] story [ 125 ms ] thread2hrs independent technical reading.
2hrs independent design/development.
4hrs code-review/training others/discussions.
Whenever I step back into any office, I am astounded at the lack of productivity in comparison to my own. I feel I can easily accomplish 2x to 3x the work in the same 8-hour day at home compared to an engineer of equal skills and experience.
As a data point, I am currently full-time employed, it just happens that I prefer full-time being four days a week. I recently made the switch from five to four, and I'm enjoying it immensely.
"I want to work 4 days per week".
"OK, no problem, we will reduce your salary / bonus etc by 20%".
Time passes.
"Ok, I am doing the same job for 80% of the salary and I never make my bonus".
":)".
I know that being a salaried employee is different, but if you're letting people work you into 10-hour days, don't.
I'm totally with you to prefer a shorter full-time schedule.
8 hours working full-time
4 hours on dev/devops for kihi.io
2 hours learning something new (go, rust, etc.)
rest walking the dog or sleeping
seems normal
That being said I worked remote (from home) for ~5 months and felt like a got a ton of work done, most days coding for 5-6 hours, 1/2 - 1 for communication, and 1 hr for technical reading / self-training.
Currently i'm working at a shop that thinks i should arrive at the office at 9 and leave at 6. to me, that adds up to 45 hours a week (per above, imo lunch with coworkers is an important part of teamwork and counts as working): that's too many hours each week at a place that also strictly counts PTO days! and those two factors combined certainly discourage me from ever putting in more than the odd hour or two of self-study on the weekends & evenings.
Sometimes the tasks I'm assigned are merely to reconnoiter the feasibility of taking action, and not to actually develop or commit code changes.
In other cases I'll be asked to change something that required 30 seconds of effort. Maybe flipping the value of a configuration flag from true to false, et c.
On average, I'll deal with tickets that involve several hours of stepping through nested loops in a debugger and inspecting log output, or wading through long-running SQL queries, and then committing changes that improve upon an existing body of work.
More rare are the intermediate tickets, that might take days and weeks of effort, and roll up into a larger project spanning many weeks or months across multiple developers. Tickets that keep me continuously tasked for multiple days at a time experience differing degrees of productivity, depending on hundreds of variables, and some of those variables are the work environment.
If something's really important and difficult, and the colleagues I'm delivering it to possess an understanding that it requires my undivided attention, then I'm provided with exactly that. I'll ask for a quiet office to camp out in, with a door I can lock, if I need it.
No matter what, I'm in the office, regardless of whether I'm idle, during a dead zone of activity while we wait for other people to provide requests or complete planning through interminable daily hours-long meetings, or whether I'm swamped in a firestorm of emergencies that divide my attention across several immediate worries.
At the end of the day, I'm paid for my time, and sometimes that pay is what will retain me through period of waiting for my turn at the trigger. If you don't pay me for that time, then I'm a temp, and not a regular, full-time employee. That's how it works.
I'm not a founder, or a partner, so I don't receive bonuses or a share of profits based on the success of calculated risks. In exchange for that, I accept the status of a regular persistent relationship. Eight hours a day, 50% of my waking time on this plain of existence, on call as a resident expert.
I stopped worrying about a perfect, even flow of continuous, normalized engagement a long time ago. Almost every field out there has varying degrees of hurry-up-and-wait temperament, and that comes with the nature of human interaction.
It's not productive to mince parsimonious hours and minutes, in my opinion, when it doesn't reflect the realities of human interaction.
The only problem that we found is with people coming from consultancy. They are not confident with only having 6 hours per day as they are used to log 8 hours and bill them to a customer.
In general, the team is pretty comfortable with the approach of using 6h/day for estimations in our tasks.
I leave some videos running before I sleep so I could hear/learn something new before I sleep.
I also work through weekends.
I think it is too much, but as a Syrian, I don't have the birth advantage of having a first-world country passport, I have to keep both the job (allows me to have the visa), and I make a lot of money which I can spend on family and building my own dreams.
I have problems to get moving mostly because I honestly don't need to.
side project: 20 hrs a week
Often in programming, you have this weird situation where spending more time makes the work harder. It is actually possible to dig a hole that makes you further away from the goal, while for the whole time you think you're getting closer. So I try not to get too tired, and I manage deadline expectations. Often you find the right solution to a whole day's problem in a few minutes of clarity the next morning.
Working from home, there are certain productivity benefits. There's no commute. The environment is familiar. I can take a break whenever I like, to do whatever I want, like take the kid out on a 2 hour lunch break. I can make more kids during work hours. Run errands. Often I find I can spread out the normal working hours over a longer period and feel better.
There's no meetings, other than online chats on Skype or Slack. There is a bit of a danger of chatting too much, but it's not as bad as when you're sitting in the office.
The thing that makes the most difference is whether I like what I'm doing. If I'm enjoying a project, time just flies by. It's like snapping your fingers, and breakfast turns to lunch, which turns to dinner, which turns to bedtime.
The other is the first place I worked their were two younger coders and they were being flogged to work 9-10 hours days, basically being given unreasonable deadlines. After a few years they burned out and the company fired them. Twenty years later both of them are still damaged. I did some of the same, hurt my wrist, which is still a little messed up. After that I decided I didn't care I was going to work as much as I though possible and that's that. You only have so many hours a day. Instead of using yourself up, concentrate really hard on not wasting your time.
Me, I've never been fired for not working enough hours.
Of course working too much is bad for everyone, I sympathise with your examples.
I feel most relaxed when that's split between 2 hours in the morning and 2 hours in the afternoon. Great days are 6 hours (i'll be in "the zone" from ~4:30 to ~6:30).
Another 3-6 hours can be spent reading (code or books) and exploring (fiddling around in a repl).
I am at the office for 8-10 hours per day, but the office is really only a center where most work hours occur. Often a good Saturday spent across libraries, cafes and parks can yield 6 hours of getting shit done.
Personally I work every day. When I am tired and not productive, I work less. When I feel good, I work much. The minimum is usually 6 hours. Maximum is usually 12 -14 hours. At weekends, it happens it's just 2 hours a day.
I don't count in work time. I count in "fun". If I have fun, I automatically work more. If I am not having fun, I need to double-check if I am the right thing. If it's not, I go away. If it is temporary or something that needs to be done, I make sure I have some good relaxing part afterwards.
"Also, 90% of webdev does not require that much creative hard-thinking imo."
Really? Is this true for people? I'm a web developer, and right now i'm sorting through 30K lines of obfuscated javascript code looking for a bug. A few hours of that and my brain gets pretty tired!
I can see how frontend or higher-profile backend dev can be more unwieldy/demanding, though.
I made the 90% remark because it is a somewhat common opinion that programmers are completely above the hours thing. Were programming a totally creative activity, I would agree, but it is not.
In my experience managing and being part of various teams and projects for over a decade, I have found that a senior level developer that gets 4 hours of productive work done each day (over a week average, often not in one spurt, depending on the individual) is worth his/her weight in gold.
I always try to encourage 40 hours a week of being online, available, dealing with meetings and whiteboard sessions, but 1/2 of that devoted to heads down work like coding or designing. Often many people that are extremely valuable end up getting less than 20 hours a week of real focused work done in my experience.
Personally I'm kinda afraid that some developers out there might be pulling actual 8 hours of overhead-free progress, unlike me. Doing that daily would certainly drain me.
If I didn't value that tangential learning time, I would probably be happy with 4.5 hours of solid "productive" work :)
I've worked at three other web firms and always had to pad my "billable hours." A boss gives me a project with "x" amount of hours and I'm not going to say "well, I can do this in half the time," because they'll just give me more work with no additional pay.
If I were truly motivated I would start my own firm. But I don't like dealing with clients or writing functional specs; I only like to code.
"Working", "producing", code grunt-ing, whatever you call it, seems to be what most young folks spend all their time doing in their first few professional years (it's what I did too). This is a good thing, it builds a lot of exposure and raw experience. You may be immersed in (or cranking out) code, fixing bugs, or working directly on your project/product for almost your entire work day, every day.
But at some point, many re-remember that they must learn and grow to advance in their field, and with that comes reading, exploring, trying/failing, as well as non-technical work, like planning/architecting, etc.
Once you start finding that you are pulled out of the code more and more, it's just a sign that "working" and "producing" are getting further from each other for you. And that's not a bad thing.
I then spend about 2 to 3 hours on administrative, misc project management, emails, research, self-improvement/learning, and personal and business projects. Somewhere in there is some fruitful and non-fruitful time wasting.
On good days, I can crank out 6 hours billable, when really pushing it on deadline that can go to 8 or 10, but that wipes me out for a while afterwards.
Within the few months of working from home, I've noticed a radical change in my day. No longer am I interrupted randomly, while in deep thought. I don't veer off to the break room for coffee, and get caught up in conversations. I don't take excessive lunch breaks to stand in lines at a restaurant. Speaking of, it helps the waistline! I have easy access to my full kitchen at home. I digress.....
Anyway, my team is located in central time, so I reap the benefit of distraction free coding between 2PM and 7PM pacific time.
I typically wake up, sit down at my desk at 9AM, and begin my daily routine of checking email, checking out what's new via HN, catching any meetings with folks in the central timezone, etc. Once lunch comes, I take a break, and begin planning what I want to accomplish in my 2-7 distraction free time block.
So, while I do work a full 8 hours, only about 4-5 hours of that time is spent head down in code.
Point is, I certainly agree working 4:30 is probably sufficient, however, for me, I do utilize the other hours of the day to "socialize" and plan "big picture" with my colleagues via video conference. I feel that if I lost the extra time in the mornings, these meetings would overflow in to my distraction free time.