A series of some books that have helped guide the me on my path (or I just enjoyed), feel free to suggest some more :) Note that my categorization is a bit funky - many of these books could really be in almost all of the categories...sorry about that!
-
Managing Humans: Biting and Humorous Tales of a Software Engineering Manager by Michael Lopp
- For those new to management, I'd recommend it. Nothing crazy, but it was a good sidekick for me in my first stint as a manager
-
An Elegant Puzzle: Systems of Engineering Management by Will Larson
-
The Manager's Path
-
Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations by Nicole Forsgren PhD, Jez Humble, Gene Kim
- This book got me thinking about how life as a developer 'ought' to be. The collective learnings of hundreds of developers and teams all assembled in a piece that inspired me to learn more about agile and leaner ways of working/managing.
-
Team Topologies By Matthew Skelton and Manuel Pais
- Given that teams need to be self-organizing and autonomous, this book is a natural follow up from Accelerate and it's just as digestable. If you don't want to read it (or re-read it), there's always a cheat sheet you can use
-
Making Work Visible: Exposing Time Theft to Optimize Work & flow by Dominica Degrandis
- A bit older, and maybe a bit straightforward but a good reminder on how we can make important and incremental changes in our daily work to make our lives easier - and to eliminate waste.
- Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
- An old one but a good one. I can never get myself through this book.
- The Phoenix Project by Gene Kim, Kevin Behr, and George Spafford
- If you aren't into textbook reading, but want to learn about how DEVOPS and lean management can help your organization, this is the right book for you. A fun and engaging novel for those in the tech space.
- The DevOps Handbook by Gene Kim, Jez Humble, Patrick Debois, John Willis
- A follow up to The Pheonix Project in guidebook form. I have used this regularly after my first read.
- The Unicorn Project by Gene Kim
- The Phoenix Project from a developer's perspective gives a lot more insight into the benefits developers can get out of the Dev part of the DevOps movement
- Microservice Patterns: With Examples in Java by Chris Richardson
- Another 'old but good'. This was my introduction into microservices, and led me down the same curious path many people who learn about microservices want to understand. How do I design a microservice or a set of them to make them actually work in the real world?
- Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems by Martin Kleppmann
- Oh look, (part of) the answer to some of the questions I had while reading Microservice Patterns. Warning: This one is extremely dry, but also very informative. Take breaks, take notes, and drink coffee.
- Staff Engineer: Leadership Beyond the Management Track by Will Larson
- Want to move your development career forward but not sure where the road ends? This one is for you. Want to support a senior developer and continue their growth so they don't get bored? Same. I found it to be a good listen on my morning walks with the dog.
- The Staff Engineer's Path
- Haven't read it yet.
- Building Microservices: Designing Fine-Grained Systems: Newman, Sam
- If you found Microservice Patterns to lack some of the motivation, tradeoffs, and nuance you crave, this is the book for you. Newman isn't trying to sell you on the cult of microservices, just talk through their use cases, and have an honest look at when they do and don't work.
- Domain Driven Design by Eric Evans
- I think this book taught me more about software engineering than almost any other book from my undergrad.
- Modern Software Engineering by David Farley
- The 100 Page Machine Learning Book by Andriy Burkov - https://themlbook.com/
- For those who want an actual technical breakdown of AI/ML (not newer LLM stuff), this is right for you. Good introduction to the math, without diving too deep into the weeds
- Hands-On Machine Learning with Scikit-Learn, Keras, and Tensorflow by Aurélien Géron
- Exactly what the title says, and a lot more. I read this and worked through Kaggle problems alongside it and found it to be extremely helpful both with the basically of why I would want to use different strategies, and how to use them in some of the most popular ML frameworks around (sorry torch)
- The Alignment Problem by Brian Christian
- This one kind of shocked me into learning more about ML. A great introduction for both non-technical and technical people into the real world problems that machine learning is, and will continue to have with respect to the alignment between the machine's goals, and ours.
- Forecasting: principles and practice: Hyndman, Rob J, Athanasopoulos, George
- I wanted to learn about timeseries, and that I did. This is definitely lower level and a little older so lots of the R code I more or less ignored, but it taught me a lot about time series analysis and prepared me for some more complex models that can be built
- Thinking In Systems: A Primer by Donella H. Meadows
- This book is a must read for absolutely everyone. Yes, many concepts should be familiar to those who took STEM courses, but a dose of 'healthy reminder' along with some genuine learning can't hurt anyone.
- Talking to Strangers: What We Should Know About the People We Don’t Know by Malcolm Gladwell
- Almost like the alignment problem between different humans. This is a really fun one.
- Atomic Habits by James Clear
- Good Economics for Hard Times by Abhijit V. Banerjee and Esther Duflo