andrew fogarty · writing

Recommended readings on software engineering management

a working list of books I recommend

A new software engineering manager should read High Output Management, The First 90 Days, and The Manager’s Path before starting the role, and the rest of this list over the two years that follow. This is a working index of the books I recommend to software engineering managers, grouped by the year in the role at which each one pays off. I add to it as I read, and the date at the foot of the page records the last change.

Year 0: Before the First Manager Role

These are essential readings before starting your first manager role.

  • High Output Management, by Andrew S. Grove. Grove defines a manager’s output as the output of the organization under them plus the output of the organizations they influence, and every chapter follows from that definition: which activities multiply a manager’s time, task-relevant maturity, the one-on-one, and the meeting as the medium of managerial work. Read it first, because it supplies the vocabulary that the rest of this list assumes.
  • The First 90 Days, by Michael D. Watkins. Watkins treats a new role as a transition with its own failure modes and gives a plan for the first three months: diagnose the situation you inherited, secure early wins, and build the relationships with your manager and your peers before you need them. It is written for general managers, but the transition it describes is the one a new engineering manager makes.
  • The Manager’s Path, by Camille Fournier. Fournier walks the ladder from mentor to tech lead to manager to director to CTO, one chapter per rung, and each chapter says what the role owes the people below it and above it. Read the chapters for your rung and the next one, and keep the book for the rung after that.

Year 1: Once You Have Settled Into the Role

These deepen the fundamentals once you have settled into the role.

  • Staff Engineer, by Will Larson. Larson describes the staff-plus role from the inside: the four archetypes (tech lead, architect, solver, and right hand), how staff engineers get and keep their scope, and what they need from their manager. I recommend it to managers because the staff and principal engineers on a team are the people a new manager most often misuses, and this book shows what they need.
  • The Art of Leadership, by Michael Lopp. Lopp gives 30 short practices, grouped by the three stages of his own career as a manager, a director, and an executive, and each practice is small enough to try in the week you read it. It is the book on this list to keep within reach rather than read once.
  • Scrum, by Jeff Sutherland. Sutherland co-created Scrum, and this is his account of why it works: small teams, short sprints, a visible backlog, and a retrospective that changes the next sprint. Read it for the reasoning rather than the ceremony, and read it even if your team does not run Scrum, because every planning process you inherit borrows from it.
  • Tidy First?, by Kent Beck. Beck separates tidying, the small structural changes that make a behavior change easier, from the behavior change itself, and asks when each tidying is worth its cost. It is a book about code, but the question in its title is one a manager settles for a team every week.

Year 2: With Experience in the Role

These go deeper and reward a year or two of experience in the role.

  • An Elegant Puzzle, by Will Larson. Larson’s subject is the organization as a system: sizing teams, the four states a team can be in (falling behind, treading water, repaying debt, and innovating), and how to move a team from one state to the next. It is abstract, and the abstractions only make sense once you have felt the problems they name, so it rewards a year or two of experience.
set in crimson pro · · updated