“The more you know, the more you realize you don’t know. The less you know, the more you think you know.” — David Dunning
Books
Whether you’re looking to sharpen your coding skills, build better software, or enhance your leadership abilities, having the right books in your library is crucial. I’ve compiled a list of top-notch engineering books that span various domains, including software architecture, agile methodologies, cloud platforms, and leadership. These are the books that have profoundly influenced my approach to engineering and can guide you in becoming a better engineer or engineering leader.
- Righting Software by Juval Löwy
- This book offers a deep dive into designing and delivering complex software systems. Löwy provides a comprehensive framework for creating software that meets its goals, integrates well, and delivers high performance.
- Get it here
- Technology Strategy Patterns by Eben Hewitt
- A fantastic guide on aligning technology with business goals, this book is essential for technical leaders. It focuses on strategic decision-making and patterns for leveraging technology in an organization.
- Get it here
- Designing Cloud Data Platforms by Danil Zburivsky and Lynda Partner
- If you work with data in the cloud, this book is a practical guide to building scalable and reliable cloud data platforms. It’s essential for those working with cloud-native architectures.
- Get it here
- Fundamentals of Software Architecture by Mark Richards and Neal Ford
- This book provides an in-depth look at software architecture patterns and practices, along with trade-offs involved in architectural decisions. It’s a must-read for any aspiring software architect.
- Get it here
- Distributed Tracing in Practice by Austin Parker, et al.
- An excellent resource for understanding observability in distributed systems, this book walks through using distributed tracing to troubleshoot and improve system performance.
- Get it here
- Continuous API Management by Mehdi Medjaoui, et al.
- APIs are central to modern systems, and this book provides actionable insights on managing them across the full lifecycle, from design to operation.
- Get it here
- Scrum: The Art of Doing Twice the Work in Half the Time by Jeff Sutherland
- Scrum is one of the most popular agile methodologies, and Jeff Sutherland, one of its creators, explains how Scrum can revolutionize the way teams work and deliver.
- Get it here
- SQL and Relational Theory by C.J. Date
- This book is a deep dive into the principles of relational theory and SQL, offering a thorough understanding of how databases work at a foundational level.
- Get it here
- Database Design and Relational Theory by C.J. Date
- A follow-up to SQL and Relational Theory, this book focuses on designing relational databases and provides practical techniques for building effective database schemas.
- Get it here
- SQL Antipatterns by Bill Karwin
- This book is a collection of common mistakes in SQL and relational database design and how to avoid them. It’s essential for anyone working with databases.
- Get it here
- Agile Testing by Lisa Crispin and Janet Gregory
- A comprehensive guide on integrating testing into agile workflows, this book is a must-read for anyone involved in quality assurance in an agile environment.
- Get it here
- Complete Guide to Test Automation by Arnon Axelrod
- Automation is key to maintaining quality in fast-paced development environments. This book covers best practices for implementing test automation in software projects.
- Get it here
- User Story Mapping by Jeff Patton
- This book introduces user story mapping, a technique for visualizing the user’s journey and ensuring your team focuses on building the right features at the right time.
- Get it here
- UX Strategy by Jaime Levy
- If you’re looking to integrate user experience design into your strategy, this book provides a great roadmap for creating UX strategies that align with business goals.
- Get it here
- Sprint: How to Solve Big Problems and Test New Ideas in Just Five Days by Jake Knapp, John Zeratsky, and Braden Kowitz
- This book details the five-day sprint process used by Google Ventures to tackle big problems in record time. It’s a great read for teams looking to accelerate innovation.
- Get it here
- Continuous Delivery by Jez Humble and David Farley
- Continuous delivery is a key practice in modern software development. This book walks through automating the software release process to ensure reliable, low-risk releases.
- Get it here
- The Goal: A Process of Ongoing Improvement by Eliyahu M. Goldratt
- This book is a fascinating exploration of process improvement, told through a novel format. While not strictly about software, its lessons apply to improving any process-driven environment.
- Get it here
- Working Backwards by Colin Bryar and Bill Carr
- This book offers an inside look into how Amazon develops products and manages teams using the “working backwards” approach. It’s a valuable read for anyone in leadership or product development.
- Get it here
- Doing Agile Right by Darrell Rigby, Sarah Elk, and Steve Berez
- Agile can be transformative when done correctly. This book offers insights on applying agile principles to maximize results in both small and large organizations.
- Get it here
- The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win by Gene Kim, Kevin Behr, George Spafford
- This classic book on DevOps uses a novel to tell the story of a troubled IT project and the transformative power of DevOps practices to turn things around.
- Get it here
- Honorable Mentions
- Refactoring: Improving the Design of Existing Code by Martin Fowler
- An Elegant Puzzle: Systems of Engineering Management by Will Larson
- The Pragmatic Programmer: Your Journey to Mastery by Andrew Hunt and David Thomas
These books offer valuable insights into various aspects of software development, architecture, testing, agile, and leadership. Whether you’re managing teams, designing architectures, or building cloud platforms, these resources will help guide you to success. Make sure to grab a few of these and start enhancing your skills today!
Let me know if you have your own recommendations or want to discuss any of the books!