Most software engineers turned managers I’ve met struggle with the same issue in their first weeks on the job and usually end up saying something like: “I couldn’t get any work done this week!”. Of course everybody expects to have more meetings, move to a manager schedule, but most are not prepared enough to the major change in feedback loop that occurs.
The Developer Feedback Loop
Building software can get frustrating, but it’s also very rewarding. Before a developer’s involvement there’s a bug or a feature missing… once they’re done the problem is fixed! On top of this, you get to focus on writing code most of your day and almost always have a few commits to show for it.
Overall the feedback loop is quick and simple with milestones such as:
- Your tests go from red to green
- The project compiles
- Your PR gets approved and released
- A given library is succesfully updated
- Performances improve in your app and you have the graphs to prove it
- The number of errors reduces in a given area
- You can see usage numbers for something you’ve built
Overall development has a lot of situations where either it functions or it doesn’t, making success and failure clear. Another cool part is that your work can easily be showcased to others and you can generally say “look at what I built!”.
The Manager Feedback Loop
As a manager it is quite different. You are not required to build things directly, but instead empower your team to do it as well as possible.
To achieve this, you might spend more time attending meetings or talking to people without any direct visible result. You will also work on very long term plans where you will notice the benefits only after months or years. You’re also not the one “actually” building the software, so it’s easy to think that you’re not really being productive.
It’s good to note that you’re not suddently useless, instead it’s a lot of perception change due to the fact that the feedback loop is different. It’s more subtle and on a longer time frame… and in most cases, if you do things right, no one might even notice! Instead of a couple of features in front of happy users each week, you could have to wait a year to see that Alice became more productive thanks to your guidance, or that Bob really grew into his new role as technical lead thanks to your reorganisation of the team.
In this case the feedback loop is longer and harder to measure:
- A person in your team improves over time faster than they would have without you
- Technical choices are proven to be right year after years
- People better understand the context they’re building software in, objectives are clear
- The team remains productive and focused
- Turnover stays low, people are generally happy
- Project are delivered on time
- No one is working crazy hours to reach objectives
- There are not many complaints from your team
- External & internal clients are consistently happy
- There’s a general feeling of moving forward
This isn’t a bad thing, it’s only a difference to keep in mind. In order to avoid being stressed out or depressed, new managers need to understand this concept as soon as possible so that they can focus on what matters instead dreading this feeling of unproductivity. This is an entire new position, it’s normal to take a bit of time to get a good feel for it.