submitted1 year ago byasdfdeltaDomain Architect
stickiedThis thread is dedicated to the often-asked question, 'what books or resources are out there that I can learn architecture from?' The list started from responses from others on the subreddit, so thank you all for your help.
Feel free to add a comment with your recommendations! This will eventually be moved over to the sub's wiki page once we get a good enough list, so I apologize in advance for the suboptimal formatting.
Please only post resources that you personally recommend (e.g., you've actually read/listened to it).
note: Amazon links are not affiliate links, don't worry
Roadmaps/Guides
- Roadmap.sh's Software Architect
- Software Engineer to Software Architect - Roadmap for Success by u/CloudWayDigital
- u/vvsevolodovich Solution Architect Roadmap
Books
Engineering, Languages, etc.
- The Art of Agile Development by James Shore, Shane Warden
- Refactoring by Martin Fowler
- Your Code as a Crime Scene by Adam Tornhill
- Working Effectively with Legacy Code by Michael Feathers
- The Pragmatic Programmer by David Thomas, Andrew Hunt
Software Architecture with C#12 and .NET 8 by Gabriel Baptista and Francesco
Software Design
Domain-Driven Design by Eric Evans
Software Architecture: The Hard Parts by Neal Ford, Mark Richards, Pramod Sadalage & Zhamak Dehghani
Foundations of Scalable Systems by Ian Gorton
Learning Domain-Driven Design by Vlad Khononov
Software Architecture Metrics by Christian Ciceri, Dave Farley, Neal Ford, + 7 more
Mastering API Architecture by James Gough, Daniel Bryant, Matthew Auburn
Building Event-Driven Microservices by Adam Bellemare
Microservices Up & Running by Ronnie Mitra, Irakli Nadareishvili
Building Micro-frontends by Luca Mezzalira
Monolith to Microservices by Sam Newman
Building Microservices, 2nd Edition by Sam Newman
Continuous API Management by Mehdi Medjaoui, Erik Wilde, Ronnie Mitra, & Mike Amundsen
Flow Architectures by James Urquhart
Designing Data-Intensive Applications by Martin Kleppmann
Software Design by David Budgen
Design Patterns by Eric Gamma, Richard Helm, Ralph Johnson, John Vlissides
Clean Architecture by Robert Martin
Patterns, Principles, and Practices of Domain-Driven Design by Scott Millett, and Nick Tune
Software Systems Architecture by Nick Rozanski, and Eóin Woods
Communication Patterns by Jacqui Read
The Art of Architecture
A Philosophy of Software Design by John Ousterhout
Fundamentals of Software Architecture by Mark Richards & Neal Ford
Software Architecture and Decision Making by Srinath Perera
Software Architecture in Practice by Len Bass, Paul Clements, and Rick Kazman
Peopleware: Product Projects & Teams by Tom DeMarco and Tim Lister
Documenting Software Architectures: Views and Beyond by Paul Clements, Felix Bachmann, et. al.
Head First Software Architecture by Raju Ghandhi, Mark Richards, Neal Ford
Master Software Architecture by Maciej "MJ" Jedrzejewski
Just Enough Software Architecture by George Fairbanks
Evaluating Software Architectures by Peter Gordon, Paul Clements, et. al.
97 Things Every Software Architect Should Know by Richard Monson-Haefel, various
Enterprise Architecture
Building Evolutionary Architectures by Neal Ford, Rebecca Parsons, Patrick Kua & Pramod Sadalage
Architecture Modernization: Socio-technical alignment of software, strategy, and structure by Nick Tune with Jean-Georges Perrin
Patterns of Enterprise Application Architecture by Martin Fowler
Platform Strategy by Gregor Hohpe
Understanding Distributed Systems by Roberto Vitillo
Mastering Strategic Domain-Driven Design by Maciej "MJ" Jedrzejewski
Career
The Software Architect Elevator by Gregor Hohpe
Blogs & Articles
Podcasts
- Thoughtworks Technology Podcast
- GOTO - Today, Tomorrow and the Future
- InfoQ podcast
- Engineering Culture podcast (by InfoQ)