→ Software needs great managers.

Is engineering management something YOU might enjoy? Read on for the answer :)
The word “management” has boring, dread-inspiring associations, but this is sooo wrong.

This vocation is a force of tremendous good in the world, and being a manager in the complicated context of software is a challenging job, worth doing well.
First and foremost: do you enjoy working with people, or are you happier at your screen with your head down?

As an engineer, your main output is product: code, screens, flows. As a manager, your primary output is your team.

Managing is a different skill to programming.
The context of being able to code, and the experience of having shipped software, is invaluable - but managing people requires you to exercise different muscles.

And, fundamentally, you have to enjoy other people and care about other people.
You have to care about people because the more management responsibility you take on, the less software you will be directly building.
This is inevitable if you want to be an effective manager: one of the biggest mistakes a manager can make is prioritising building software over building teams.
Once you are a manager, your achievements are the team’s achievements - the satisfaction of a job well done is seeing teams and individuals grow and then outgrow you.

As a manager you spend most of your time listening and talking.
The most important and powerful tool in the manager’s arsenal is the 1:1 meeting - the time that you spend with those you manage, just you and them.
If you manage 10 people (which is towards the top end of what most people can do), and sit with each of them for 30 minutes every week, that’s 5 hours a week - essentially a whole day.

I also take between 5-15 minutes to prepare each 1:1 conversation, and write up notes.
With 10 people, that’s another 1-2 hours a week invested in preparation.

It should go without saying: your time management needs to be good. You need to be timely on replying to emails, on booking calendar slots and keeping yourself organised.
Put it this way: if you see your manager late, stressed and disorganised all the time, it can give cause to worry.

If your time management is naturally good, then that’s a sign that this sort of role is suitable for you.
So, it’s important to enjoy working with people and you have to derive satisfaction from the achievement of creating a great team. Because you’ll be spending almost all of your time doing this stuff.
You have to start answering questions that nobody is asking yet, radiating information between teams and being consistent as hell on your messaging.
A lot of the time, nobody asks you to communicate this information - your manager might not suggest you circulate it, your team might not know to ask about it.
You have to realise on your own that your team will benefit from knowing more about this topic, be it for their immediate tasks, for context, or for their understanding of the direction of the overall company.
Talking of the overall company: communicating goals and vision is also a critical part of the information you will now be producing and relaying.
I believe that being “on song” is a critical part of the manager’s role: you need to be a consistent cheerleader and supporter of the plan, the vision and of the team.
You can’t complain about your reports to others, and although you definitely should listen to their critique of how things are going, you shouldn’t join in.
This doesn’t mean saying things are perfect when they’re broken - it doesn’t mean lying, spinning or seeming delusional. You need to be honest, rigorous, consistent and authentic.
You’re honest that things aren’t perfect but rigorous, consistent and authentic in your desire to improve them, and your expectation that your team will work to do the same.

In summary: great managers help create great software.
Simply put:

Because every problem is now a software problem,

It’s important that our software is built well,

... and engineering managers have a crucial role to play in well-built software.

That’s why being that manager is a way to have a meaningful impact on the world.
And most important of all - we need inclusive teams.

The diversity of our industry has changed and is improving. This is a cause for tremendous celebration and positivity - but the work isn’t done.
Inclusivity is the second, harder step in building an industry that represents the world it helps shape.

We need to create environments where all types of people can thrive, do their best work and become their best selves.
To be blunt: we require inclusive environments of which people want to stay part.

… and engineering management is critical to this, too.
Does this sound like you?

Join my mailing list to learn more from engineering leaders. https://samsworldofno.ck.page 
You can follow @samsworldofno.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: