What does a manager do?

The answer to this, and many questions ahead of us, is “it depends”.

A manager’s job is to improve outcomes. On the way to improving outcomes a manager may hire and fire, teach and train, delegate, or do it themselves. As a manager you’ll have to manage up, manage out, advocate, and advertise. No one will care about your mission as much as you do, but that’s the job. Do whatever it takes to improve outcomes.

Technical managers often ask “should I write code as a manager?” It depends! The manager is one person among a team of many. Managers should seek out activities with the greatest leverage. Leverage means maximum output for minimum effort. Writing one line of code to fix a bug is good, but teaching a team to build resilient systems is great.

Should managers protect their teams? It depends, although I tend to think not. A manager can only block bad news and negative feedback for so long. Eventually the truth will come, breaking through like water over a dam. Direct and timely feedback is essential to growth and learning. Failure is the best teacher. Please don’t hoard the gift of failure.

There are many management styles. Joel Spolsky (linked below) has a trilogy of essays that explain the history, intentions, and outcomes better than I could.

Additional Reading