Software Architecture


Fundamentals of Software Architecture: An Engineering Approach
Clean Architecture
Designing Data-Intensive Applications
Building Microservices: Designing Fine-Grained Systems
Domain-Driven Design: Tackling Complexity in the Heart of Software
Building Evolutionary Architectures: Support Constant Change
Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures
Software Architecture in Practice
Patterns of Enterprise Application Architecture
The Software Architect Elevator: Redefining the Architect's Role in the Digital Enterprise
Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
Learning Domain-Driven Design: Aligning Software Architecture and Business Strategy
Just Enough Software Architecture: A Risk-Driven Approach
Design Patterns: Elements of Reusable Object-Oriented Software
Dive Into Design Patterns by Alexander ShvetsDesign Patterns Explained Simply by Alexander ShvetsHead First Design Patterns by Eric FreemanThe Timeless Way of Building by Christopher W. AlexanderA Pattern Language by Christopher W. Alexander
Design Patterns
28 books — 18 voters

Chaos Engineering by Casey RosenthalAntifragile by Nassim Nicholas TalebSite Reliability Engineering by Betsy BeyerDrift into Failure by Sidney DekkerAntifragile Systems and Teams by Dave Zwieback
Learn Chaos Engineering
15 books — 1 voter
How to Win Friends & Influence People by Dale CarnegieEssential Software Development by AppJungle NET LLCHumble Inquiry by Edgar H. Schein
Soft Skills for Tech Leads
3 books — 2 voters

Neal Ford
All too often architects make a decision that is the correct decision at the time but becomes a bad decision over time because of changing conditions like dynamic equilibrium. For example, architects design a system as a desktop application, yet the industry herds them toward a web application as users’ habits change. The original decision wasn’t incorrect, but the ecosystem shifted in unexpected ways.
Neal Ford, Building Evolutionary Architectures: Support Constant Change

Neal Ford
For any dimension in our architecture that requires protection from the side effects of evolution, we create fitness functions. A common practice in microservices architectures is the use of consumer-driven contracts, which are atomic integration architecture fitness functions.
Neal Ford, Building Evolutionary Architectures: Support Constant Change

More quotes...
My Tech Reads Bits of knowledge from the most influential IT reads.
4 members, last active 7 years ago
apploft. Book Club apploft. GmbH
8 members, last active 3 years ago
Java Programming Learn about JVM programming covering Java, Kotlin, Scala, etc. and including popular frameworks,…more
8 members, last active 4 years ago
The Clean Architecture Ukraine Group of software engineers from Ukraine who use The Clean Architecture.
1 member, last active 2 years ago