* Meetings
* Mentoring
* Answering random questions
* Continuing education (Hey, Spring 6.0 was just released, what's in that?)
* Support (and being available for support)
Those can easily fill in a lot of the 'void'.I can point to 5h/week that are standing 'meetings' where it is often 'me helping out someone with a git or jira or GitHub issue' and it is that time that is designated each day (to try to avoid having the 'answering random questions' become too disruptive).
I am certainly not '40h/w, butt in seat, head down coding' and even though I may be only "productive" 10-20h/week, I'm certainly busy with work stuff to fill up the rest of my day. It's never "do an hour or two of work in the morning and day dream for the remaining six hours."
When I say I’ve only been productive for 20 hours in a week, I don’t mean I spent 20 hours programming and 20 hours in meetings, I mean I spent 10 hours programming and 10 hours in meetings. I’d be surprised if most people only count programming time as productive time! If you’re doing 40 hours a week of programming + meetings + support + any other needle-moving things, you’re more productive than I’ve ever been in a job.
The only completely unproductive state is if you're doing nothing for your job and also refuse to respond to communications.
Most of us managers would consider meetings, mentoring, work-related Slack conversations to be productive time. Yet I read a lot of the comments here where people don't consider anything to be productive time unless they're actively writing code, which ignores the realities of working in a team environment.
A better metric might be tracking the amount of non-work time: Time spent on HN, social media, reading news articles, running errands. Again, us managers are realistic that everyone can (and should!) take small breaks throughout the day. However, if those breaks expand to fill 20-30 hours of the supposed 40-hour workweek, something has gone very wrong. That's certainly not normal at any well managed company.
So while it may be important, it's just wasted time for many.
Says more about the organisation than the definitions, but still.
Personally, I think the non-value add category doesn't translate from a factory to coding. If your job is putting boxes on a pallet, when you're browsing HN instead you probably don't do it faster later. When coding, at least for me, I take breaks to think or clear my mind, and I'm not swapping productive coding for online time wasting, browsing HN (or taking a walk or coffee) is a necessary part of the work that improves productivity.
All that to say, meetings and other management stuff can and should be streamlined as much as possible, small breaks, not necessarily. If someone is actually typing code (or an equivalent activity) 25% of their time sitting at the computer, I'd consider that e extremely productive.
1. An hour-long meeting where architecture is decided
2. Doing investigation/documentation of RCA for an incident
3. Spec reviews with stakeholders who will have to use the product
But it’s tough. As a product manager, I think that the right spec can greatly increase engineering efficiency. If that’s true, and bear with me, spending an extra 20 hours on a spec might save 1000 hours of dev time. Isn’t that the same as making those devs more productive? So do we count that work as 20 hours, or 1000 hours?
I like it in principle but I’m not sure it scales across disciplines.
In fact, even just for specifically code-related work, think about code review. Really closely reviewing a big PR can take hours.
Here's a fun thought experiment. How many engineers in a team do you need before one of them could be employed full-time just reviewing others' code?
I don't know the answer, but it could be as few as 10 other team members, depending on the size and complexity of the PRs.
And reviewing code is extraordinarily productive - looking for correctness, code style and patterns, tool selection and usage, app structure, etc., etc. One of the best ways to mentor team members and help keep the codebase clean.
But yes managers dont get this when i say i get all my work done during lunch hour.
The least efficient/productive company I have ever worked for had formal meetings all the time. What takes a week where I work now would take 6 months there.
So no I don’t agree that meetings are automatically productive/useful in general. I am pretty sure you can measure how productive a software company is by the following formula:
Time spent working on projects divided by Time spent in meetings.
That said, I feel you could cut my time on the clock from 40 hours a week to 32 with minimal-to-no impact on my total productivity.
Is it lines of code or reasoning about lines which lines of code to write/adjust and everything else is not?
My definition would encompass all of the stuff you mentioned as ancillary. In some cases, it's even more Productive than the actual code writing.
1. Non work social media. 2. Work socializing (water cooler). 3. External support/collaboration/reviews. 4. Day dreaming not about work. 5. Thinking about work while not “producing” maybe not even at computer.
I can work 40 hours where it feels like 10-20 hours are actually working on my “planned” work, but the other time is on #3 and #5 which “feels” like a void but is actually critical and valuable to business.
I’m not saying you are but some people categorize this sort of work as BS or not work and that’s totally wrong IMO.
;)
I disagree. But I think what we qualify as "work" is more rigid than it needs to be. Is spending 5 minutes looking at HN every few hours work? Most people would say no, but it absolutely helps developers to know what's going on or new or what other devs outside their company are saying.
If I spend 20 minutes reading about a language/app that my company doesn't use is that work? I think a lot of the "yes" answers would be accompanied by rolling eyes.
I doubt we've found the optimal work to rest ratio, but a lot of these assumptions go unchallenged in these discussions.
I think it's unfair to not count any of this as work. As engineers it's important for us to be on top of current trends and available tools.
Yes, your company might not use it today, but if no one reads about new developments in tooling/languages, your companies processes will always stay the same and (if better tools for the job emerge), will just be priming a market that new entrants using better technology will be better able to serve.
Some exploration of new technologies is really important for people in our field, and it's really unfortunate that (many) people working in the field feel they have to spend ~10-20 hours per week of their own time keeping abreast of new developments to stay competitive
You'll be passed over for promotions because you're so good in your current position!
You'll be praised and then one day you'll get a new boss when your old boss moves on. And your new boss will have this need to prove themselves to their boss. And they'll do this by turning your 40 hour week into a 60 hour week. Why? Because you're a tool!
Don't be a tool. Do what your boss does - spend time talking to people around the company - thats what lunch meetings are all about - figure out how to get those expensed! Get to know everyone and follow up with them frequently. Invite them to non-work things. Go home early because you have a life.
Unless, of course, your work is your life. In which case, you're leaving the dream, bud!
There shouldn't be a 20-30 hour "void" in people's work week.
If people are meeting, discussing work, building relationships within the company, or otherwise doing things around their work, I still consider that to be productive time. Nobody actually expects programmers to be writing code 40 hours a week. We know this.
On the other hand, if people are spending 30 hours per week messing around on the internet, browsing social media, chatting in social Discords, or other activities that are clearly not work related, that's not normal at all at well managed companies.
There are a lot of companies where people can get away with working 2 hours per day and then ignoring work for the other 6 hours of their supposed 40-hour work week, of course. I think a lot of people have experienced these companies somewhere in their career and concluded that everyone, everywhere is actually only expected to do 2 hours of work-related things per day. It's not true at all, and I've met a lot of people who really struggle to adapt once they finally end up on a well-managed team that expects people to put in more than a couple hours of work-related effort per day.
I suspect we'll see a lot of companies clamping down on these low-productivity pockets now that the easy money has run out and we're all forced to examine personnel costs very closely. I know I've had a few coworkers who curiously never seem to do much of anything. They've always been first to go when the layoffs arrive and their managers are forced to choose who stays and who goes.
It all just depends on how much ambition you have my friend, you too can slack off for 3/4 of your workday if you don't take on more responsibility than you can do in 1/4 of your time lolololol
I’ve worked on plenty of teams where nebulous “team building” was an entirely enjoyable and majority unnecessary excess way to spend time at work. Loved those teams, but we could have worked a 4 day week, still had a tight team, and gotten just as much done for the business.
I've heard that at Amazon, these people are referred to as "PIP fodder", which makes it sound like they're still able to contribute the fulfillment of business objectives, in their own way
I'm a consultant with a 70% utilisation goal, meaning that at least 28 hours per week needs to be spent on things which I can defend billing a customer for. Add non-billable pre-sales activity and admin task on top, and not much time is left over.
My own experience and what I've observed in other people is that this is unsustainable both because of normal working habits and the unreliable cadence of new projects. As a result, I spend a few months of the year working 60 hours per week to get ~100% utilisation, then the next few months getting as much project time as possible while also catching up on all the other obligations I was forced to neglect like training.
As I write this, consulting seems more and more like a really shitty style of working...
The thing is that many modern jobs don't fit a taylorist model where you can measure worker performance precisely.
Not to mention that many variables that affect worker performance are out of control of companies.
That's assuming that the work you've been set to do is productive, and you're doing it in a productive manner. For instance, I've spent weeks grinding away on features that never get used by customers. Is that productive? I've also spent hours trying to fix a bug because of infrastructure/platform/tooling constraints that means the code/compile/debug cycle is stupidly slow. Is that productive?
I don't have the slightest doubt I could be a lot more productive than I am now while working less hours. But it's often down to factors that are more or less out of my control.
"No better options" is a hell of a drug, haha.
That said, we should definitely be experimenting. If people are equally productive at 40 hours and 20 hours, we shouldn’t keep them in the office just for aesthetics.
Unless you are a cashier or some other customer service position, the time you spend working should be matter very little compared to your output.
If you a job that takes you 20 hours, you can either do it in 20 hours and get a huge chunk of your life back, or you can do it in 40 hours and spend a lot of time chatting with your coworkers making them unproductive.
It's up to management to understand how much time it takes to complete tasks and to staff accordingly.
Conversely, many gigs I've had there was multiple hours per day of mindless web surfing because there just wasn't work to do.
Such irrationalities have always been present in the institution of wage slavery.
See twitter for an excellent current example of what this looks like.
Sometimes I'll wander round the house and read docs or make notes on my tablet while doing housework, still contributing to future work/planning but definitely would show as 'inactive'.
I know one UK dev who took a job in one of those, moved there from some hotel booking company, earned $200k, lasted almost 2 years and then got unceremoniously sacked right when one of his close family members passed away due to missing required metrics.
If people worked 20 hours per week, the actual productive time would likely be between 5 and 10 hours per week.
We shouldn't treat productivity like we're robots, we're not switched on working on a repetitive task for all of 8 hours a day.
This is the 10x engineer. Their peers are working 10 hours, but never get in the flow like they do. Hence the 10x productivity.
I haven't seen anyone doing 40 hours a week. At least not more than a week.
40 is nothing...
Maybe we should work pilots like that... It'd certainly make flying more "fun"
Wonder if the two things could be related.
It's not exactly hard at his level. He can delegate absolutely everything and cannot be obliged to do anything. He can pick who is around him at all times, and they are usually obligated to cater to his wishes. 120 hours of casual chats, meetings, presentations, shared meals, and travel count as long as it's related to any of his 3 major businesses.
are you joking? 2 hours a day is nothing.
> actually doing 40 hours a week you are productive as hell.
i've easily topped 100 hours a week for prolonged periods. i'd guess it is the same for any founder.
Some people spend most of their life working 60 real hours weeks, especially blue collar work.
I have a white collar workplace, and there is a big spread. There are people that do 20 hours of real work and those with a 60+ hour average.
I have done 100+ hour weeks of real heads down work & all nighters , but can't/wont do it prolonged.
As skeptical as some people are of merit based compensation, I'm confident that the willingness to pull out the stops and get it done has lead to promotions, raises, and freedom to scale down my workload during slow times.
I think it is interesting that some people simply don't believe that high volume work happens, is productive, or is even possible.
If I had this confidence, I'd put in the hours cheerfully; I've had spells of 80-100 hour weeks in the past and invariably it was caused by sales people or managers over-promising without asking a technical expert, and could have easily been avoided. Doing the hours resulted in some vague gratitude at best.
Now (in a new role), I can see clear evidence of things which are correlated with promotion, but working long hours is not one of them.
Of course working 60 hours a week on some bullshit project with no impact will not have the same results.