I’ve seen this claim recently and it’s rubbish.
Yes, if by “nothing” we mean writing next to no code, because they’re busy either:
- architecting software solutions, as they’re knowledgeable enough that they should be doing this instead of writing code
- understanding a lot of what is going on in components and/or the system so that when there’s an issue they say “oh, this is likely because of X” and the resolution takes days instead of weeks.
I.e. yes, there is a percentage of developers who we pile other tasks on and they don’t get to write code.
My experience is that the more knowledgeable developers get, the less code they write.
Then neurodivergent peeps are different - an Autistic dev might be super knowledgeable and happy writing unit tests because they don’t enjoy the uncertainty of large problems, or an ADHD developer might have a large system-wide view but write what seem like small contributions.
Or have incessant meetings with Senior management or Business Unit leadership to keep them in the loop or even constrain their unrealistic expectations.
Yeah… How many “ghost devs” don’t produce much code because they area stuck in meeting after meeting that they don’t need to be in just in case “someone has a tech question”?
We recently got moved under someone who leads call center operations and they’re wanting to apply similar metrics to the devs to “ensure they’re being productive the entire time”. I told them that there’s lots of work they do outside the normal 9-5 and that you can’t just measure what someone does by lines of code created else you’ll end up with a 30 line if statement instead of a for each letter loop, but they don’t seem to care. If things get implemented I’m just waiting for the shit show it’ll cause.
Yup. I judge devs by problems solved (bugs fixed, features implemented) based on initial estimate and actual delivery time. If they’re consistently off, they either need help with estimation (I’ll tell them to increase estimates) or they aren’t doing their job. I don’t care if the solution is 1 lines or 1000 lines (well, I prefer less code), I care if they feel confident in their estimate before starting work, and if they’re able to deliver close to their estimate. I also care what others on the team think about their estimate, and I’ll review anything that seems out of whack.
And this is why I refuse to work anywhere where the people managing devs don’t have dev experience. My boss was a dev, and they’re fantastic at catching me on my BS, which tells me I’m being fairly evaluated. I can’t ask for more than that.
I am number 2.
Well, you are what you eat, and so is your poo.
Crack a window, buddy.
You’re talking about people who work at a high level and might not type that much code. Thats definitely a thing.
I’ve also got a junior front line engineer on my team who does literally nothing. It takes them 10x too long to do anything and they require so much help from seniors than it would be faster for them to do it themselves. One of the seniors told me “a sure fire way to make sure something doesn’t get done is to give it to them.”
But gosh, it isn’t 10% of them that are like this. No way. This person is 1 in 500.
It’s possible to have a developer that does nothing. But that’ll requires a project manager that does nothing and a manager that does nothing. And coworkers that are willing to put up with that shit. Everybody’s running kanban or agile simply to keep this from happening.
Actually watch the video, you’re way too generous in your analysis.
The metric is essentially lines of code. That’s it.
So everyone who isn’t hacking away ultra verbose code is considered useless. Lead devs and architects often don’t write any code at all. They’re not unproductive.
Ah, the Musk approach to dev
Shit, and here I thought spending my day unblocking people somehow boosted productivity.
On the whole, absolutely. As a quantifiable metric that presents well to leadership? Sorry, bub.
I did watch the video. Just because it’s what she said doesn’t mean that was the only thing that was there. You should also note that the MBA that designed and performed the study was also a middle school dropout, and has a bunch of narratives weaved about his life.
This paper has an agenda and he has something to sell.
I’m a Lead dev/architect. I’m the least productive when I’m coding because all the other stuff falls through the cracks, like devs doing nothing. I’ve had to get rid of a few people over the years for not doing anything, they get away with it for a while because I’m not a babysitter but it comes to light eventually and they get the boot.
Eh, I’m a lead and I write at least a couple hundred lines most weeks, though some weeks I’ll write nothing because I’m in meetings or prepping a project (lots of estimates). But even if I’m mostly doing prep, I’ll still usually take some tech debt because estimating all week sucks, and I can knock out a couple hundred lines of tech debt fixes in an afternoon.
So I don’t buy it. We fired two leads before because they didn’t do actual development, one just wrote proposals (no movement on implementation) and the other just did tech debt. I do a mix of feature work, planning, and tech debt, and I think that’s how it should be. I oversee or do risky POCs and estimations, but other than that, I’m a regular dev. Oh, I also do reports because I’m also a manager, so midyear and EOY are pretty unproductive from a dev perspective for me.
And that’s actually part of the problem: your title doesn’t mean anything.
Not that you’re not leading, but what “lead” or “senior” actually means is completely arbitrary.
In one project I’m lead in, I wrote maybe 5 lines of actual code, because I was in meetings, wrote documentation, did release management (well, I wrote pipelines here, but that’s like 200 lines), etc. The actual leg work was done by 4 or five other guys.
But in another project, I’m lead of myself and another bloke, of course I’m writing code in that one.
So it’s completely possible to have a bunch of guys with the “developer” tag on their title, but they’re not doing much developing.
I wrote pipelines
We have devOPs for that.
Release management for our devs is tagging repos (automated), making a few PRs (mostly automated), and informing other dev teams of the release. Product owners update their docs, support updates theirs, and project manager coordinates everything.
My involvement in the release is limited to actual dev tasks, as in tracking down logs if there’s a bug or something during deployment. Total time for a release deploy (my end) is about an hour, two if things go poorly. We release 5-10 repos in a typical release, so it’s not small.
We don’t have the same team doing every release, we take turns. So I’ll do a release about once a month (usually a release release then one or two hotfix releases), and we do a major release every month (we’re doing #12 next week). Most of the release process is on our QA team, not devs.
If you have “developers” who aren’t developing, you’ve hired the wrong people IMO. Here are some support roles we have:
- architecture - currently two people; they give initial estimates to product team
- QA - they do development, but only on tests (role = “QA engineer”)
- scrum master - no development, just tracking (releases, features, etc); they’re the ones product and support talk to about capacity
- project manager - cross team communication with scrum masters and product team
As a lead dev (we have one per team), I step in to keep projects on track, provide estimates, and help prioritize tech debt. If I’m available (I usually am), I’ll take feature work, and I produce code at about half capacity vs our regular devs (i.e. non-junior). Our releases are usually on-time (within a week or two on a 2-3 month estimate), so I think our setup works pretty well.
When I worked at a smaller company (one dev team, no project manager or scrum master), we didn’t hit targets as well, and I did even less “admin” work (my boss was the CEO and he handled everything… poorly). We had a QA team, but the devs wrote the tests instead of the QAs, which we started on after handing the release to QA for verification (took 1-2 weeks due to long term tests).
So on both ends of that spectrum, I did a lot of development as a lead. I do less now than my last role, but I still spent about half or more of my time writing code.
In my experience, kanban and agile might technically prevent an employee from doing nothing, but they also might very well facilitate someone doing nothing productive.
https://ludic.mataroa.blog/blog/i-will-fucking-haymaker-you-if-you-mention-agile-again/
Some people do nothing but kanban and agile which is effectively doing nothing.
If you are properly using either of those it’s very easy to tell if someone’s not pulling their weight or is having extreme difficulty in a situation.
As soon as someone starts underperforming in project management constructs, you put more eyes on the task. They’re either a legitimately stuck, or they’re not working.
They’re just tools, and they make it very easy to visualize what’s going on.
Exactly.
We use both, and the only people who spend significant amounts of time interacting with the board are project managers (during sync meetings across teams), scrum masters (planning and following up), and product owners (creating requirements). Devs spend a little time adding their own estimates, comments, or moving things along the kanban board, but that’s not a lot of time, and that goes for me as a lead as well.
We have 7 or 8 dev teams, three project managers (one per region), and two scrum masters (at HQ, not sure how our outside teams handle it). And honestly, I think our two scrum masters are a little redundant because there’s only so much agile that needs to be done.
If a dev (regardless of seniority) is spending more than half a day in a given week on kanban stuff, they’re probably avoiding doing their job.
It happens, but it always comes to light eventually. People are too busy keeping up with their own work to be babysitting someone who doesn’t want to put in the effort.
Has an MBA ever contributed anything of value?
Statistically speaking, a few of them definitely fucked up at some point and accidentally did the right thing. Or committed suicide.
It’s just really sad to see this comment and also upvoted this many times. Doesn’t contribute to the conversation at all, plus possibly starts some hate circlejerk.
That rate seems high. But, I have done post-mortems on a bad developer’s run at a company, and found they did very nearly nothing. No commits, no issues opened or closed, some comments, but that was almost their entire digital footprint.
Most developers I’ve worked with are obviously not doing nothing, though some of us (including myself) get stuck doing a lot of work on a project that never makes it into production due to shifting priorities.
Yup. I’m a senior software dev, and some weeks I write no code at all. Sometimes that’s because I’m researching something (output is a doc a/ estimates), other times it’s code reviews, and other times I’m stuck in meetings all week.
But most weeks I’ll write some code, even if it’s just fixing some tech debt. If someone isn’t contributing for a month, they’re definitely not doing their job.
Our most critical dev / solutions expert spends most weeks in meetings.
That’s our architect, and they’re not a dev (they don’t even do code reviews), but they are quite critical because it’s their job to understand the entire app, including in-progress changes from other teams. They have their own team (architecture), so they don’t report on any dev team, they report to the director.
Maybe that’s what others are calling a “lead dev”?
Seems to be a trend, my boss was telling me that the VP’s in our org think we need more lead devs and less solutions architects, though they would functionally be doing largely the same role, meetings, planning, design, interfacing with teams they are dependent on, annual technology reviews etc. I think it’s going to bite them in the end
I imagine hiring will be an issue. Devs want to dev, and naming an architect role a “dev” role doesn’t communicate the role properly.
Yep, they talked about it a bit during my hiring what I wanted my title to be since they are paid the same and do the same tasks(in addition to some coding expectations). I’m glad I chose architect, but ultimately they squeezed me out of that with RTO mandates for architects and above.
Tldr the original article is all based off the findings of AI trying to evaluate the efficiency of code contributions. And from the little i looked at it, it seems to fall apart pretty quickly after that.
It’s really astonishing how an entire article written using an AI-based metric is taken seriously, let alone discussed at length. Well, it probably plays into existing biases, which is likely the reason for its existence in the first place.
There is a difference between productivity and activity, you can be 100% active at work all day, yet 0% productive. Imagine you work on a project for 6 months and then the manager decide to drop the project. You have been unproductive for 6 months, doesn’t mean you were slacking off, but in the end when we calculate the productivity of developers, it is lower because of this.
Sometimes I feel like I do nothing.
My productivity is pretty low since I got promoted to one of our “lead developers.” So much of my time is spent looking at other people’s code, answering questions, mentoring, etc. Task switching becomes a huge issue, where even if I have time I’ve been pulled back and forth and it takes me like an hour to get back into whatever I was doing. It can take weeks for me to close tickets sometimes. And sometimes even when I have busy days, I come away feeling like I did nothing.
It’s definitely giving me Peter Principle vibes sometimes. And though my manager always tells me I’m doing good work, I feel like he’s too disconnected from my day-to-day, and that surely my Scrum Master and Product Owner are trying to get me replaced.
It’s…not a great state of mind, even if I know it’s bullshit. They wouldn’t be giving me raises if they didn’t think I was worth it. But…still. I’ve never stayed at the same job this long, and part of me keeps waiting for the other shoe to drop.
Imposter syndrome is a bitch.
I’m in the same exact boat, but would like to offer you this:
As a previous so-called ‘ghost engineer’, it took three people to replace me, and four months for damage control when I wasn’t there to keep things in top shape. There was documentation to keep things running, but since I wrote that documentation and “my contributions weren’t necessary foe the team’s success” Well. Why leave them?
obligatory Betteridge’s law of headlines
I’m one of those who “do nothing”, if you’re measuring by commits and lines of code.
- as an architect, I spend way too much time doing diagrams and presentation
- as a point of engineering escalation, I spend a lot of time researching things no one can figure out
- as a stickler for code quality, I like nothing more than those days where my lines of code are negative
On the other hand, if you go by the amount of code I indirectly effect with best practices, code quality, appsec, and assisting developers, I affect all of engineering (hundreds)
And that’s obvious from the very beginning, when you look at how human collectives work. You never can determine who really does nothing.
Even if we imagine this is somehow possible, there are social predators, as in psychopaths or at least scheming jerks, in every one of them, who don’t want a transparent structure of responsibility. And there’s the majority of us who rely on their kind to handle the social dynamics we don’t want. And there’s need for some stability.
But all that aside, engineers would be the last group in my list to check for people “doing nothing”. Almost everyone eager to discuss engineers “doing nothing” would fit higher there.
No, but I want to be one.
If someone really does nothing, it’s really obvious. You don’t need statistical analysis to determine who it is, just ask their teammates. Developers don’t work in isolation. Actually, it’s a very collaborative job where you’re in constant interaction with other people. If someone doesn’t contribute their fair share, it’s going to be obvious very quickly.
The problem is often a lack of mechanism to act on it. Sure everyone might complain about a coworker, but once a person is hired they become just a number and management doesn’t typically care about individual performance, only that all the spots in the org chart are filled.
Yet more bullshit probably aimed at RTO. Corporate media will keep pushing the same narrative.
Yeah her comment that basically saying bullshit like this almost SOLEY to justify layoffs is pretty deprived is right on the money
This is actually a pretty good analysis. I love that she clarifies it’s not a research paper, but a “canva infographic.” Spot on.
She doesn’t mention that the MBA professor who authored the infographic also seems to contract with FounderPartners, a VC consulting firm.
So this is really an ad for his side gig; “Pay us lots of money, and we’ll justify your layoffs with sciency mumbo jumbo.🌈😘📈”
If I had to put money one which an MBA or a software engineer doing jack shit at work. I’d lean pretty heavily towards the MBA.
I’m pretty sure the reason we don’t see the engineer side is because the engineers are focused on problems solving. The other groups are more focused on selling and conveying information. If that’s your job you are going to be much better at shifting attention scrutiny to other groups.