Managers Make Teams Deliver More Value, Not Deliver More Output
True productivity for a team is measured by the value created, not the work completed. The job of a manager is to focus on the value hidden behind the piles of work.
Welcome to the Scarlet Ink newsletter. I'm Dave Anderson, an ex-Amazon Tech Director and GM. Each week I write a newsletter article on tech industry careers, and specific leadership advice.
Free members can read some amount of each article, while paid members can read the full article. For some, part of the article is plenty! But if you'd like to read more, I'd love you to consider becoming a paid member!
When I first moved into management, I read something which stuck with me.
It said that many software engineers who move into management find themselves feeling less fulfilled. It referred to that wonderful feeling you get when you slip into the flow state, and just crush out some productivity.
As a manager, there aren’t many opportunities to put on headphones and crush some productivity. I mean, sometimes I’d sit and write a doc for 6 hours, but that (thankfully) wasn’t an everyday thing. And I think most people don’t get into the flow state while writing as much as I do. Which explains why I’m doing this newsletter thing now.
Anyway, beyond the interesting anecdote, I think it also speaks to the differences in our jobs between people who do things, and people who manage people who do things.
When you’re a manager of a team which does things, you’re personally responsible, in an organizational / corporate way, for the productivity of your team.
What I mean is that your manager will say, “Why didn’t you deliver X on time?” - When you personally weren’t delivering it. Or another senior leader might say, “Why did Y take longer than expected?” - Again, you weren’t actually the one doing it.
They’re asking you because they expect the manager to figure out how to get their teams to be productive, get things done, and get things launched.
I’ve written about how you should only set goals for critical work (to give you more flexibility).
And I also wrote about how you can’t measure the productivity of creative workers.
But when it comes down to it, managers are responsible for getting their team to complete work. Engineering managers need their teams to engineer things. Design managers need their teams to create designs.
And yet, as a manager, your hands are fairly tied. When your team has some important work and the dates are slipping, you’ll likely be asked to “do something!” What can you do?
Let’s start with what you can’t do.
You can’t make them do their work faster.
This feels clear to me as a past software engineer, but it’s something we need to all understand first.
If you’re a software engineer, and you’re writing a particular bit of code, is there anything your manager can say or do to make you write that code faster? Absolutely not. Any manager interaction will distract you.
If you’re a designer, and you know exactly what you need to design, will your manager interacting with you help? No, you’re designing as fast as you can.
For any complex creative work, you are as productive as you are. Your manager can remove things (distractions, for example, which I’ll get into later), but they can’t improve your actual productivity.
We can learn things to become better at our jobs (college, training classes, books, etc), but that’s a long term investment.
When we’re hard at work delivering on project work, our actual productivity is basically locked.
What does that leave us? Well, quite a bit still.
Fix actual motivation and accountability gaps.
I believe most mid/upper management requests to measure productivity are created from a place of not trusting their workers. “If I don’t figure out how to manage these engineers, they’ll just watch cartoons all day.” It’s insulting, and the effort to measure creative complex work just distracts everyone.
I’d say that with a good team culture and an interesting project, the vast majority of people will focus and deliver. Oh sure, sometimes they’ll take long lunches, or watch some YouTube at 3pm, but the vast majority of people will naturally get work done.
However, I’ve also worked in the real world. I’ve gone multiple days in a row where I was unable to motivate myself to do more than attend meetings. I’ve heard from engineers on my team that they’ve spent more than a week without writing code. I’ve heard of people working remotely who said that home is great, but it’s incredibly distracting.
What are we missing? Motivation. Accountability.
Because let’s be honest. If you were paid $300k a year to sit around at home and occasionally say, “Yeah, um, I’m still working on that task” — You’d also be tempted to watch Netflix most days.
Our creative jobs are hard to measure. How can we keep a team accountable without resorting to stupid (and ineffective) metrics?
Insist on open progress.
No one is allowed to say, “I’m still working on that code” or “I’m iterating on the doc”, without everyone being able to see their work.
This is what modern systems support. Your code should be continually committed. You keep your docs in Sharepoint, or Google Docs, or whatever. Your designs should be wherever designers keep them these days.
The point is that everything in progress should be visible to everyone. Lack of accountability dies with visibility.
It’s not about babysitting people. But days of binging Netflix or watching YouTube or surfing Reddit while pretending to work will disappear if they know people are watching what they commit.
It’s simply healthy. It’s a good habit to say, “Here is my in progress work, and you can see what I’ve been doing at all times.”
Designs. Code. Docs. Basically every job has artifacts, and you should be able to see those artifacts changing.
When I had people with motivation and/or performance issues, this was frequently the way I was able to detect it. “You worked on this project for the last 3 days, but I only see one small code commit.”
With a policy of open progress, there’s simply no excuse. Everyone knows that they need to be producing regularly. Not because you’ll necessarily check every day, but because there’s no hiding a lack of progress.
Standard agile processes.
Agile in general isn’t perfect, but it has a couple of great mechanisms.
The core one related to standup is “Here’s what I did yesterday, and what I’m going to do today.”
This keeps everyone on the same page. And it becomes very apparent to anyone paying attention that someone has repeatedly listed the same thing. And with open progress, you can look to see what’s up.
Again, as an engineering manager, the first signal that someone is not making progress due to performance issues or motivation is that I’ll hear the same updates a few days in a row.
I don’t expect progress every day, and all of us get distracted at times. And sometimes we get stuck. But when it’s a pattern, it will be apparent.
Another core aspect of agile processes is the sharing of a common work pool. You can have a lazy day or two, but it becomes apparent if someone isn’t taking their share of the common work. Every sprint there will be a pile of work (bugs, tasks, designs, etc). If someone isn’t pulling from those lists regularly, they and their team will notice.
This isn’t about measuring progress, it’s about ensuring that a lack of progress isn’t completely invisible.
Shared ownership of delivery.
Managers can’t see everything. Teams can be destroyed by someone not pulling their weight. I’ve seen teams dissolve because the manager wasn’t making people accountable. And it’s difficult for managers to always know when someone is not writing much code, or not doing as many designs as they should theoretically be able to do.
If you don’t pull your weight, your team tends to dislike you. So what can the manager do? Insist that everyone pull their weight, and if anyone is annoyed at another teammate, they need to insist on performance.
In real life, I’ve seen this from one engineer to another, “Hey Joe, you were stuck on that task for the last couple of days. How about I take it over, and you can take this other (easier) one?”
I’ve also repeatedly seen this, “Hey Dave. Joe has been slacking, and it’s really starting to annoy the other devs on the team. We’ve hinted to him that he needs to get unblocked, but most days he doesn’t get anything done. I think you need to do something about it.”
Team performance is everyone’s responsibility. As a manager, you can teach that. Insist that everyone is accountable to everyone because the team delivers work, not individuals. And if anyone is having trouble making progress, it’s everyone’s job to collectively help them get things done.
Now that they’re delivering work product, it’s time to talk about how to make that work time more effective.