My favorite books to better understand software architecture

Why am I passionate about this?

I’ve been a software architect for a very long time. I love hard problems, and I’m very passionate about collaborating with others to find the right solution to them. Software architecture is a challenging, multi-faceted discipline with very few resources to help you make the right decisions. That’s why I’m recommending these books on software architecture. These books helped me become a more effective software architect, and I hope they can help you become more effective as well.


I wrote...

Fundamentals of Software Architecture: An Engineering Approach

By Mark Richards, Neal Ford,

Book cover of Fundamentals of Software Architecture: An Engineering Approach

What is my book about?

Salary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real guide exists to help developers become architects. Until now. This book provides the first comprehensive overview of software architecture’s many aspects. Aspiring and existing architects alike will examine architectural characteristics, architectural styles and patterns, component determination, diagramming and presenting architecture, evolutionary architecture, soft skills, and many other topics that apply across all technology stacks. In it you’ll explore software architecture in a modern light, taking into account all the innovations of the past decade.

Shepherd is reader supported. When you buy books, we may earn an affiliate commission.

The books I picked & why

Book cover of The Software Architect Elevator: Redefining the Architect's Role in the Digital Enterprise

Mark Richards Why did I love this book?

It is my belief that half of being an effective software architect is mastering people skills.

However soft they are, these skills are the hardest to master. This book focuses on the communication and soft skills necessary to become an effective architect, and it does it superbly. The author’s elevator metaphor is perfect in that it emphasizes the fact that communication must exist on all levels within the organization, and the skills needed at each level differ.

I personally found this book very useful in honing my communication skills as a software architect.

By Gregor Hohpe,

Why should I read it?

1 author picked The Software Architect Elevator as one of their favorite books, and they share why you should read it.

What is this book about?

As the digital economy changes the rules of the game for enterprises, the role of software and IT architects is also transforming. Rather than focus on technical decisions alone, architects and senior technologists need to combine organizational and technical knowledge to effect change in their company's structure and processes. To accomplish that, they need to connect the IT engine room to the penthouse, where the business strategy is defined.

In this guide, author Gregor Hohpe shares real-world advice and hard-learned lessons from actual IT transformations. His anecdotes help architects, senior developers, and other IT professionals prepare for a more complex…


Book cover of A Practical Guide to Enterprise Architecture

Mark Richards Why did I love this book?

This book was very influential in my career as a software architect because it was the first “technical” book I read that finally focused on the people and leadership skills of being an architect.

It was also the first book I read that made me start to think more about the intersection of agile and architecture, something they also devote an entire chapter to. While a bit outdated in today’s world, the authors hit the nail on the head with the still-relevant chapters on thought leadership, agility, and software architecture modeling.   

By James McGovern, Scott W. Ambler, Michael E. Stevens , James Linn , Vikas Sharan , Elias K. Jo

Why should I read it?

1 author picked A Practical Guide to Enterprise Architecture as one of their favorite books, and they share why you should read it.

What is this book about?

In A Practical Guide to Enterprise Architecture, six leading experts present indispensable technical, process, and business insight into every aspect of enterprise architecture. You'll find start-to-finish guidance for architecting effective system, software, and service-oriented architectures; using product lines to streamline enterprise software design; leveraging powerful agile modeling techniques; extending the Unified Process to the full software lifecycle; architecting presentation tiers and user experience; and driving the technical direction of the entire enterprise. For every working architect and every IT professional who wants to become one.


Book cover of 97 Things Every Software Architect Should Know

Mark Richards Why did I love this book?

Imagine sitting in a room with 50 of the top software architects in the world and have each of them tell you some brief words of advice about being a software architect.

Welcome to “97 Things Every Software Architect Should Know”. Each 2-page spread features a top software architect offering their advice on some aspect of software architecture. From technical skills to soft skills, this book has it all.

This book is a must-read if you are a software architect, or even thinking about becoming one.

By Richard Monson-Haefel,

Why should I read it?

1 author picked 97 Things Every Software Architect Should Know as one of their favorite books, and they share why you should read it.

What is this book about?

Collective Wisdom from the Experts


Book cover of Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions

Mark Richards Why did I love this book?

Although first published in 2004, this book continues to be my primary reference for anything related to messaging, event processing, and integration architecture.

The patterns described in this book are still highly relevant today, and are explained in a clear and concise manner that makes each one easy to understand and implement. Because you will encounter these patterns everywhere, this timeless book is a must-read book to better recognize and understand these patterns. 

By Gregor Hohpe, Bobby Woolf,

Why should I read it?

1 author picked Enterprise Integration Patterns as one of their favorite books, and they share why you should read it.

What is this book about?

Enterprise Integration Patterns provides an invaluable catalog of sixty-five patterns, with real-world solutions that demonstrate the formidable of messaging and help you to design effective messaging solutions for your enterprise.

The authors also include examples covering a variety of different integration technologies, such as JMS, MSMQ, TIBCO ActiveEnterprise, Microsoft BizTalk, SOAP, and XSL. A case study describing a bond trading system illustrates the patterns in practice, and the book offers a look at emerging standards, as well as insights into what the future of enterprise integration might hold.

This book provides a consistent vocabulary and visual notation framework to describe…


Book cover of Just Enough Software Architecture: A Risk-Driven Approach

Mark Richards Why did I love this book?

Why should you spend so much time working on the software architecture of a system? Does it really matter?

This book made me realize that not all systems need the same effort of software architecture to make them successful. If you’re building a doghouse, very little planning is needed—all you need is some wood, nails, a hammer, and a saw. If you are building a skyscraper, you need a significant amount of planning and architecture, or the building will collapse.

In this book the author also talks about risk-based architecture—determining how much architecture is needed based on risk, a perspective I found very helpful in my career as an architect. 

By George Fairbanks,

Why should I read it?

1 author picked Just Enough Software Architecture as one of their favorite books, and they share why you should read it.

What is this book about?

This is a practical guide for software developers, and different than other software architecture books. Here's why:

It teaches risk-driven architecting. There is no need for meticulous designs when risks are small, nor any excuse for sloppy designs when risks threaten your success. This book describes a way to do just enough architecture. It avoids the one-size-fits-all process tar pit with advice on how to tune your design effort based on the risks you face.

It democratizes architecture. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that…


5 book lists we think you will like!

Interested in software, agile software development, and software development?

10,000+ authors have recommended their favorite books and what they love about them. Browse their picks for the best books about software, agile software development, and software development.

Software Explore 55 books about software
Agile Software Development Explore 18 books about agile software development
Software Development Explore 15 books about software development