Great management and leadership books for the technical track
Monday, February 12, 2024
In tech, we're fortunate to have separate management and technical tracks, though it's still underdeveloped1. However, the path you take isn't very clear, it's not broadly understood what the responsibilities are, and there aren't as many resources out there as there are for management. But there are still some really good resources!
The technical track has recently started to get a lot of very good writing around it. This is great! We can learn from it, but we can also pull from all the existing management and leadership literature out there. While we staff+ engineers are not managers, our roles have a lot of management-like responsibilities, because leadership is a big component of either track! So we have this wealth of management and leadership books to draw from.
I love to read books (and to buy them, faster than I can read them, but let's not talk about that). Over the years I've come across a few books that I really strongly recommend to everyone, but in particular, to people who want to advance on the technical track. Here are my favorites, along with why I like them!
Note that I've included links to buy the books. Some of these are affiliate links, which help support me and my writing.
First up is The Manager's Path by Camille Fournier. This is a classic at this point, and is widely regarded as the software engineering management book to read first. Fournier has the experience to back it up, and the book gives a great overview of what engineering management even is, and what you should expect to see and do at each level. It gives great context on what management is and every engineer should read it, even just to understand their manager's perspective to better leverage their manager.
One thing I really liked in this book is that it includes a chapter on being a tech lead. This is the first real leadership role that many engineers will have, and it's where they have to decide which track to pursue from there. It was the first time I saw a description of a senior IC's role written down in a book.
Another great one is High Output Management by Andy Grove, an early employee and the third CEO of Intel. It's filled with overall excellent advice and knowledge, and is well worth a read. I read this one around when I was considering a staff engineer role, and it was the first management book that explicitly included me2. In it, Grove describes "know-how managers", who are people with deep expertise and don't necessarily have subordinates but have equivalent responsibility and impact to peer managers through their roles.
The book also introduced me to the concept of dual reporting and gives practical advice on dealing with it. This is critical in software engineering, since we're often in a dual reporting situation between engineering and product management, with responsibilities to both. Or between our individual job function and the team we're on. It happens a lot, and this is a tension you have to learn to manage!
A recent addition to this literature is Resilient Management by Lara Hogan. It's a short, very practical book for new managers. It focuses on learning about your team's needs, helping your teammates grow, setting expectations, communicating effectively, and building resiliency. Every single thing on the topic list is also extremely relevant on the technical track.
As a technical leader without direct reports, you still are focused on the team(s) you serve. You still do a lot of mentorship, coaching, and sponsorship. You still have to set expectations and help develop processes. You more than ever are expected to communicate clearly and effectively. And you are in a critical position to notice things that aren't resilient in the team and advocate for making your team resilient.
And then a fun one is Turn the Ship Around by L. David Marquet. It details Captain Maquet's leadership and management journey in the navy3 and a unique approach he took. This one is a really fun read. It's engaging and employs good storytelling. And it has some nice lessons about how to empower people to lead in each of their roles, instead of taking top-down orders as the default.
Technical leadership books
Fortunately, there are also some really good tech track books now! I have two to recommend, and a bonus I had to sneak in here.
The best book on the technical leadership track is without question The Staff Engineer's Path by Tanya Reilly. She provides an in-depth tour of everything technical leadership. You'll learn what the role entails and also how to do it effectively. Reading it, I took away a lot of things to do at work (even in a staff/principal engineer role I've been in for a bit). The cherry on top is that she's an excellent writer. If you only get one, get this one.
The second best book on the technical leadership track is Staff Engineer by Will Larson. This is the seminal text that kicked off a lot of activity, and Will did a lot of work to collect stories from many people in these roles and distill down what they do and how they do it. It's well worth a read, because it has a lot of perspectives in it and it's one of the earliest sources!
And last, I just recommend people read Thinking in Systems by Donella Meadows, because I think systems thinking is essential to any leadership or engineering role. It's the main introductory text in systems, and it's worth reading and reading again. It isn't one of those things you'll directly apply, but it's going to shift how you think about things.
Those are some of the books that have helped me the most in my technical leadership career. If you have any others, I'd love more recommendations! No promises on when I'll get to them, though, as my book backlog grows faster than I can keep up.
I'm pretty sure these tracks exist in engineering (all types), law, and accounting, to various extents. I've not researched outside of these.
Well, sort of. The book includes my role but uses "he" as the default pronoun. It was first published in 1983, flavor of the era. I like this book so much I just ignore this issue, but I'd love if that could be updated somehow.
If this post was enjoyable or useful for you, please share it! If you have comments, questions, or feedback, you can email my personal email. To get new posts and support my work, subscribe to the newsletter. There is also an RSS feed.
Want to become a better programmer? Join the Recurse Center!