An Elegant Puzzle: Systems of Engineering Management by Will Larson

Ashik Uzzaman
4 min readFeb 29, 2020

--

I am glad I stumbled upon An Elegant Puzzle: Systems of Engineering Management by Will Larson last week while listening to a podcast. I immediately took audible monthly subscription to read it. While listening to the book, I felt as if Will Larson has been talking to me over a fireside chat and sharing his long experience about how he learnt leading engineers and engineering teams after many trials and errors. I had so many aha moments that when I finished the audible this morning, I ordered the physical copy of this book from Amazon. I suspect I am going to refer back to this book every now and then to make my work life easier. I highly recommend this book to all engineering leaders.

Here are some of the notes I took along the way.

  1. There are 3 major management levels.
  • Line Management — Usually managers and senior managers under this category who manage a team of engineers. Each such managers should have 6 to 8 direct reports. In a 100 company organization, a line manager needs to have at least 5 reports. Some companies have TLM (Technical Lead Manager) positions where engineering manager is supposed to be hands on. TLMs should have no more than 4 direct reports.
  • Mid Level Management — Usually Directors and Senior Directors under this category who manages team of teams. They should have 4 to 6 managers as direct reports. In a 100 company organization, each such director needs to have 20 dotted (direct and indirect) reports.
  • Leadership — VP of Engineering or CTO are under this category. They manage a whole organization. In a 100 company organization, they should have 40 people within their dotted reports.
  1. No engineering team size should be less than 4.
  2. A team takes a long time to gel together. So don’t dissemble them easily.
  3. It takes 8 engineers in a team to support 2 tier oncall rotations.
  4. An untrained engineer (for example, new hires) is one-third productive of a trained engineer. An untrained engineer may take about 10 hours of time per week from a trained engineer.
  5. Each interview takes about 2 hours of time from each engineer to prepare, take interview, debrief etc.
  6. Only trained engineers should be in oncall rotations.
  7. Almost every platform team is working on a critical scaling rewrite.
  8. Most teams work well when it has 8 engineers. For more than that a new team should be spinned off.
  9. If your engineer is taking more than 3 interviews a week, it’s an act of mercy to give that engineer a month off every 3 or 4 months.
  10. From Accelerate, 4 measures of developer velocity to track -
  • Delivery lead time — time from creation of code to its use in production
  • Deployment frequency — how often the code is deployed in production
  • Change fail rate — how frequently changes fail
  • Time to restore service — time spent recovering from defects
  1. There are 4 sources of staffing teams -
  • team members who are ready to fill the position right now
  • team members who can grow into the position in projected timeframe
  • internal transfers from within your company
  • external hires who already have the skills
  1. How experienced managers get stuck -
  • do what worked in their previous companies
  • spend too much time building relationships
  • assume more hiring can solve every problem
  • abscond rather than delegate
  • become disconnected from ground truth
  1. Measuring teams -
  • retention rate
  • referral rate by cohorts
  • attendance rate for recurring events and team lunch
  • quality and completion rate of coffee chats
  1. An engineering manager should spend time cold sourcing (for example via LinkedIn) weekly one hour.
  2. A rigorous process should have some level of redundancy
  3. Every team needs to have a clear set of directional metrics and easily discoverable dashboard

I am a Java programmer currently working for Salesforce.com in San Francisco, California, USA. I finished my MSS in Economics from University of Dhaka, Bangladesh and two years Software Engineering Diploma from NIIT. After working for more than 4 years in various outsourcing and local projects back in Bangladesh, I came to USA on H1B visa at early 2005. Other than my passion for computer, internet and online community, I am a passionate chess player with my current USCF chess rating of 2022. In USCF terms I am a Candidate Master or Expert. I have also picked up hiking as a hobby lately. I love to travel around, read books and write blogs. Read my IT thoughts at https://ashikuzzaman.wordpress.com, online diary of regular events at http://ashikuzzaman.blogspot.com and chess endeavors at http://dragonbishop.blogspot.com . View all posts by ashikuzzaman

Published

Originally published at http://ashikuzzaman.wordpress.com on February 29, 2020.

--

--

Ashik Uzzaman
Ashik Uzzaman

Written by Ashik Uzzaman

I am an engineering leader, chess enthusiast and avid reader.

No responses yet