Discover new books on Goodreads
Meet your next favorite book

Software Design Books

Showing 1-50 of 514
Domain-Driven Design: Tackling Complexity in the Heart of Software Domain-Driven Design: Tackling Complexity in the Heart of Software (Hardcover)
by (shelved 44 times as software-design)
avg rating 4.15 — 5,920 ratings — published 2003
Rate this book
Clear rating
Design Patterns: Elements of Reusable Object-Oriented Software Design Patterns: Elements of Reusable Object-Oriented Software (Hardcover)
by (shelved 43 times as software-design)
avg rating 4.20 — 12,057 ratings — published 1994
Rate this book
Clear rating
A Philosophy of Software Design A Philosophy of Software Design (Paperback)
by (shelved 35 times as software-design)
avg rating 4.22 — 4,968 ratings — published 2018
Rate this book
Clear rating
Head First Design Patterns Head First Design Patterns (Paperback)
by (shelved 27 times as software-design)
avg rating 4.30 — 9,097 ratings — published 2004
Rate this book
Clear rating
Clean Code: A Handbook of Agile Software Craftsmanship Clean Code: A Handbook of Agile Software Craftsmanship (Paperback)
by (shelved 26 times as software-design)
avg rating 4.35 — 23,848 ratings — published 2007
Rate this book
Clear rating
Refactoring: Improving the Design of Existing Code (Addison-wesley Object Technology Series) Refactoring: Improving the Design of Existing Code (Addison-wesley Object Technology Series)
by (shelved 24 times as software-design)
avg rating 4.24 — 8,888 ratings — published 1999
Rate this book
Clear rating
Designing Data-Intensive Applications Designing Data-Intensive Applications (ebook)
by (shelved 22 times as software-design)
avg rating 4.69 — 11,368 ratings — published 2015
Rate this book
Clear rating
Patterns of Enterprise Application Architecture Patterns of Enterprise Application Architecture (Hardcover)
by (shelved 22 times as software-design)
avg rating 4.12 — 3,901 ratings — published 2002
Rate this book
Clear rating
Code Complete: A Practical Handbook of Software Construction Code Complete: A Practical Handbook of Software Construction (Paperback)
by (shelved 17 times as software-design)
avg rating 4.30 — 9,516 ratings — published 1993
Rate this book
Clear rating
Clean Architecture Clean Architecture (Paperback)
by (shelved 16 times as software-design)
avg rating 4.21 — 7,304 ratings — published 2017
Rate this book
Clear rating
Implementing Domain-Driven Design Implementing Domain-Driven Design (Hardcover)
by (shelved 16 times as software-design)
avg rating 4.05 — 1,315 ratings — published 2013
Rate this book
Clear rating
Fundamentals of Software Architecture: An Engineering Approach Fundamentals of Software Architecture: An Engineering Approach (Paperback)
by (shelved 12 times as software-design)
avg rating 4.22 — 2,415 ratings — published 2020
Rate this book
Clear rating
Building Microservices: Designing Fine-Grained Systems Building Microservices: Designing Fine-Grained Systems (Paperback)
by (shelved 12 times as software-design)
avg rating 4.22 — 5,277 ratings — published 2014
Rate this book
Clear rating
Refactoring to Patterns (Addison Wesley Signature Series) Refactoring to Patterns (Addison Wesley Signature Series)
by (shelved 12 times as software-design)
avg rating 4.05 — 1,440 ratings — published 2004
Rate this book
Clear rating
Working Effectively with Legacy Code Working Effectively with Legacy Code (Paperback)
by (shelved 12 times as software-design)
avg rating 4.14 — 4,695 ratings — published 2004
Rate this book
Clear rating
The Pragmatic Programmer: From Journeyman to Master The Pragmatic Programmer: From Journeyman to Master (Paperback)
by (shelved 11 times as software-design)
avg rating 4.33 — 24,641 ratings — published 1999
Rate this book
Clear rating
Learning Domain-Driven Design: Aligning Software Architecture and Business Strategy Learning Domain-Driven Design: Aligning Software Architecture and Business Strategy (Paperback)
by (shelved 9 times as software-design)
avg rating 4.43 — 810 ratings — published 2021
Rate this book
Clear rating
System Design Interview – An insider's guide System Design Interview – An insider's guide (Kindle Edition)
by (shelved 9 times as software-design)
avg rating 4.25 — 3,644 ratings — published 2020
Rate this book
Clear rating
Domain-Driven Design Distilled Domain-Driven Design Distilled (Paperback)
by (shelved 9 times as software-design)
avg rating 3.81 — 1,360 ratings — published
Rate this book
Clear rating
Agile Software Development, Principles, Patterns, and Practices (Alan Apt Series) Agile Software Development, Principles, Patterns, and Practices (Alan Apt Series)
by (shelved 9 times as software-design)
avg rating 4.25 — 1,323 ratings — published 2002
Rate this book
Clear rating
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Addison-Wesley Signature Series (Fowler)) Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Addison-Wesley Signature Series (Fowler))
by (shelved 9 times as software-design)
avg rating 4.12 — 1,557 ratings — published 2003
Rate this book
Clear rating
Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers) Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)
by (shelved 8 times as software-design)
avg rating 4.25 — 3,282 ratings — published 2007
Rate this book
Clear rating
Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures (Paperback)
by (shelved 7 times as software-design)
avg rating 4.24 — 936 ratings — published 2021
Rate this book
Clear rating
Tidy First?: A Personal Exercise in Empirical Software Design Tidy First?: A Personal Exercise in Empirical Software Design (Paperback)
by (shelved 7 times as software-design)
avg rating 3.91 — 1,155 ratings — published
Rate this book
Clear rating
Patterns Principles and Practices of Domain Driven Design Patterns Principles and Practices of Domain Driven Design (Paperback)
by (shelved 7 times as software-design)
avg rating 4.36 — 393 ratings — published 2014
Rate this book
Clear rating
Growing Object-Oriented Software, Guided by Tests (Addison-Wesley Signature Series (Beck)) Growing Object-Oriented Software, Guided by Tests (Addison-Wesley Signature Series (Beck))
by (shelved 7 times as software-design)
avg rating 4.19 — 2,468 ratings — published 2009
Rate this book
Clear rating
Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (Hardcover)
by (shelved 7 times as software-design)
avg rating 3.85 — 1,052 ratings — published 1997
Rate this book
Clear rating
Design of Design, The: Essays from a Computer Scientist Design of Design, The: Essays from a Computer Scientist (Paperback)
by (shelved 7 times as software-design)
avg rating 3.77 — 623 ratings — published 2010
Rate this book
Clear rating
Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# (Paperback)
by (shelved 6 times as software-design)
avg rating 4.49 — 685 ratings — published
Rate this book
Clear rating
Dependency Injection in .NET Dependency Injection in .NET (Paperback)
by (shelved 6 times as software-design)
avg rating 4.43 — 794 ratings — published 2011
Rate this book
Clear rating
UML Distilled: A Brief Guide to the Standard Object Modeling Language UML Distilled: A Brief Guide to the Standard Object Modeling Language (Paperback)
by (shelved 6 times as software-design)
avg rating 3.80 — 1,517 ratings — published 1997
Rate this book
Clear rating
Object-Oriented Analysis and Design with Applications Object-Oriented Analysis and Design with Applications (Hardcover)
by (shelved 6 times as software-design)
avg rating 3.91 — 607 ratings — published 1990
Rate this book
Clear rating
Modern Software Engineering: Doing What Works to Build Better Software Faster Modern Software Engineering: Doing What Works to Build Better Software Faster (Paperback)
by (shelved 5 times as software-design)
avg rating 4.14 — 1,256 ratings — published
Rate this book
Clear rating
99 Bottles of OOP 99 Bottles of OOP (ebook)
by (shelved 5 times as software-design)
avg rating 4.55 — 676 ratings — published
Rate this book
Clear rating
Test-Driven Development: By Example Test-Driven Development: By Example (Paperback)
by (shelved 5 times as software-design)
avg rating 4.10 — 4,427 ratings — published 2002
Rate this book
Clear rating
Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series) Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)
by (shelved 5 times as software-design)
avg rating 4.27 — 778 ratings — published 2006
Rate this book
Clear rating
Practical API Design: Confessions of a Java Framework Architect Practical API Design: Confessions of a Java Framework Architect (Hardcover)
by (shelved 4 times as software-design)
avg rating 3.75 — 63 ratings — published 2008
Rate this book
Clear rating
Software Engineering at Google: Lessons Learned from Programming Over Time Software Engineering at Google: Lessons Learned from Programming Over Time (Paperback)
by (shelved 4 times as software-design)
avg rating 4.19 — 2,052 ratings — published 2020
Rate this book
Clear rating
Microservice Patterns Microservice Patterns (Paperback)
by (shelved 4 times as software-design)
avg rating 4.24 — 721 ratings — published
Rate this book
Clear rating
Software Design Decoded: 66 Ways Experts Think (Mit Press) Software Design Decoded: 66 Ways Experts Think (Mit Press)
by (shelved 4 times as software-design)
avg rating 3.55 — 209 ratings — published
Rate this book
Clear rating
Object-Oriented Software Construction (Book/CD-ROM) Object-Oriented Software Construction (Book/CD-ROM)
by (shelved 4 times as software-design)
avg rating 4.04 — 272 ratings — published 1988
Rate this book
Clear rating
Building Evolutionary Architectures: Support Constant Change Building Evolutionary Architectures: Support Constant Change (Paperback)
by (shelved 4 times as software-design)
avg rating 3.74 — 1,090 ratings — published 2022
Rate this book
Clear rating
Distributed Systems: Principles and Paradigms Distributed Systems: Principles and Paradigms (Paperback)
by (shelved 4 times as software-design)
avg rating 3.98 — 492 ratings — published 2001
Rate this book
Clear rating
User Stories Applied: For Agile Software Development (Addison-Wesley Signature Series (Beck)) User Stories Applied: For Agile Software Development (Addison-Wesley Signature Series (Beck))
by (shelved 4 times as software-design)
avg rating 3.89 — 2,864 ratings — published 2004
Rate this book
Clear rating
97 Things Every Software Architect Should Know 97 Things Every Software Architect Should Know (Paperback)
by (shelved 4 times as software-design)
avg rating 3.62 — 791 ratings — published 2009
Rate this book
Clear rating
Programming Pearls Programming Pearls (Paperback)
by (shelved 4 times as software-design)
avg rating 4.20 — 3,229 ratings — published 1986
Rate this book
Clear rating
Thinking In Systems: A Primer Thinking In Systems: A Primer (Paperback)
by (shelved 3 times as software-design)
avg rating 4.17 — 25,181 ratings — published 2008
Rate this book
Clear rating
Data-Oriented Programming Unlearning objects Data-Oriented Programming Unlearning objects (Paperback)
by (shelved 3 times as software-design)
avg rating 3.67 — 84 ratings — published
Rate this book
Clear rating
The Essence of Software: Why Concepts Matter for Great Design The Essence of Software: Why Concepts Matter for Great Design (Kindle Edition)
by (shelved 3 times as software-design)
avg rating 4.16 — 79 ratings — published
Rate this book
Clear rating
System Design Interview – An Insider's Guide: Volume 2 System Design Interview – An Insider's Guide: Volume 2 (Paperback)
by (shelved 3 times as software-design)
avg rating 4.42 — 704 ratings — published
Rate this book
Clear rating


Vitruvius
“The ideal architect should be a man of letters, a skillful draftsman, a mathematician, familiar with historical studies, a diligent student of philosophy, acquainted with music, not ignorant of medicine, learned in the responses of jurisconsults, familiar with astronomy and astronomical calculations.”
― Vitruvius

Bruce Eckel
“Programming is about managing complexity: the complexity of the problem, laid upon the complexity of the machine. Because of this complexity, most of our programming projects fail.”
― Bruce Eckel, On Java 8

More quotes...