I practise, teach, and write about architecture. The books below are by giants on whose shoulders I stand.
Don’t just bookmark this article; get them in paperback or for Kindle and read them.
Trust me, not one of them is dry or boring. Even if you don’t love architecture and it’s just a job for you (oh my god, what am I saying!), they’ll engage you, so imagine how much fun you’ll have using them if you are passionate about the profession.
Click on the picture or title to access it on an eCommerce site and read more about the book or get it. (Mind you, some of the pictures are photos of my copies, and the covers have probably changed now.)
1. General Systems Thinking by Weinberg
It will teach you how to think straight. About anything and everything. Period.
2. Enterprise Architecture Using the Zachmann Framework by O’Rourke, Fishman and Selkow
It will sort out your priorities, teach you how to work with your clients and is required reading for an enterprise architect.
3. Design Patterns: Elements of Reusable Object-Oriented Software by Gamma, Johnson, Helm, Vlissides and Booch
It is one of the holy testaments. You can only be an architect if you are familiar with these patterns.
4. Software Architecture in Practice by Bass, Clements and Kazman
No designer or coder can pull the wool over your eyes if you have learnt this and used it early in your career. Or even at a late stage.
5. Patterns of Enterprise Application Architecture by Martin Fowler
It’s another holy testament, this is up one level from Design Patterns as it is for application architecture rather than application design.
6. Internetworking with TCP/IP by Comer
No network, no IT. You have to know the fundamentals of networking. It will help you everywhere everyday.
7. Implementing Domain-Driven Design by Vernon
Use this for guaranteed alignment between business needs and what you are designing and building.
8. Designing Data-Intensive Applications by Kleppmann
You’ll learn how to create the architecture around applications. Invaluable.
9. The Clean Coder by Robert C Martin
This one is not strictly for architecture, but if you used it when you used to code, you are surely a better architect. And if you didn’t, read it now and make your coders use it.
10. Refactoring by Fowler and Beck
It will teach you to get it right the first time. It is for coding, but at least learn it as an architect so you can push fine code behind your excellent architecture through your designers. And make them use it.
Bonus — 11. Enterprise Integration Patterns by Hohpe and Woolf
A little old, but with much that is fundamental and good. A must-read before you extend to modern integration patterns and standards.