100 Best Software Architecture Books of All Time
We've researched and ranked the best software architecture books in the world, based on recommendations from world experts, sales data, and millions of reader ratings. Learn more
As with his other books, Martin's Clean Architecture doesn't merely present multiple choices and options, and say "use your best judgment": it tells you what choices to make, and why those choices are critical to your success. Martin offers direct, no-nonsense answers to key architecture and design questions like:
What are the best high level... more
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and... more
Proven approaches such as service-oriented and event-driven architectures are joined by newer techniques such as microservices, reactive architectures, DevOps, and stream processing. Many of these patterns are successful by themselves, but as this practical ebook demonstrates, they provide a more holistic and compelling approach when applied together.
Author Ben Stopford explains how service-based... more
Hadley WickhamThis book is about the craft of software development, and thinking about how to produce good code. (Source)
Microservice technologies are moving quickly. Author Sam Newman provides you with a firm grounding in the concepts while diving into current solutions... more
Santiago BasultoIf my career path is hackers turned business people, I’d say: Start with the basics and fundamentals: SICP: Structure and Interpretation of Computer Programs Code Complete 2 (Source)
Ana BellCode Complete is for people working in industry, writing software for companies. It has little checklists at key points in the book; if you are in industry, you can make sure that your code is readable and debugged by going through these checklists and making sure you’re touching upon all aspects. (Source)
In Book 1, you'll plumb Windows fundamentals, independent of platform - server, desktop, tablet, phone, Xbox. Coverage focuses on high-level functional descriptions of the various Windows components and features that interact with, or are manipulated by, user mode programs, or... more
Rob Fuller@maddiestone Awesome book, I've read a couple editions and always learn new things. Have fun ;-) I would also recommend reading the older editions they have tricks and info that seem to disappear in newer ones. (Source)
Jeff Bezos[From "The Everything Store", written by Brad Stone] “An influential computer scientist makes the counterintuitive argument that small groups of engineers are more effective than larger ones at handling complex software projects. The book lays out the theory behind Amazon’s two pizza teams,” Stone writes. (Source)
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in... more
Authors Neal Ford and Mark Richards help you learn through examples in a variety of popular programming languages, such... more
How do you detangle a monolithic system and migrate it to a microservice architecture? How do you do it while maintaining business-as-usual? As a companion to Sam Newman’s extremely popular Building Microservices, this new book details a proven method for transitioning an existing monolithic system to a microservice architecture.
With many illustrative examples, insightful migration patterns, and a bevy of practical advice to transition your monolith enterprise into a microservice operation, this practical guide covers multiple scenarios and strategies for a successful...
moreThis award-winning book, substantially updated to reflect the latest developments in the field, introduces the concepts and best practices of software architecturehow a software system is structured and how that system's elements are meant to interact. Distinct from the details of implementation, algorithm, and data representation, an architecture holds the key to achieving system quality, is a reusable asset that can be applied to subsequent systems, and is crucial to a software organization's business strategy.
Drawing on their own extensive experience, the authors cover the...
more--M. Fowler (1999) For more than twenty years, experienced programmers worldwide have relied on Martin Fowler's Refactoring to improve the design of existing code and to enhance software maintainability, as well as to make existing code easier to understand.
This eagerly awaited new edition has been fully updated to reflect crucial changes in the programming landscape. ... more
David Heinemeier HanssonThis is next on my list of technical books to read! Refactoring is one of two programming books that I’ve read multiple times (the other is Smalltalk Best Practice Patterns), and I’m due for another reading. What perfect time then to dive into Martin Fowler’s long anticipated 2nd edition, now using JavaScript rather than Java for the code examples. Like the stoic books, I read Refactoring and... (Source)
Getting software released to users is often a painful, risky, and time-consuming process. This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours-- sometimes even minutes-no matter what the size of a project or the... more
If you're a developer and don't want to be on call for 3AM for the rest of your life, this book will help.
In Release It!, Michael T. Nygard shows you how to design and architect your... more
Stephen BakerA marvelously detailed book, and I found it very inspiring. An interesting way of looking at how computing has utterly changed in the last 30 years. (Source)
Scott JohnsonTracy Kidder's The Soul of a New Machine. This was the first book that really took a deep dive into the process of creating a high tech product from scratch. Tracy really humanized the engineering process and made me realize that was the type of industry where I wanted to be. (Source)
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun.
You want to learn about the patterns that matter--why to... more
Kirk BorneFantastic accomplishment! Congratulations @nicolefv on your outstanding #DevOps book ... I love that: “The Science of Lean” ... that works also for #DataOps and Lean Analytics. https://t.co/i9gPhKL0dt https://t.co/DNJpuJtER0 (Source)
With this practical guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity. Each pattern is... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
Building on Eric Evans’ seminal book, Domain-Driven Design, the author presents practical DDD techniques through examples from familiar domains. Each principle is backed up by realistic... more
In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars, techniques... more
Microservice Patterns... more
In this collection of essays and articles, key members of Google's Site Reliability Team explain how and why their commitment to the entire lifecycle has enabled the company to successfully build, deploy, monitor, and maintain some of the largest software systems in the world. You'll learn the principles and practices that enable... more
more
Design and build scalable web applications quicklyThis is an invaluable roadmap for meeting the rapid demand to deliver scalable applications in a startup environment. With a focus on core concepts and best practices rather than on individual languages, platforms, or technologies, Web Scalability for Startup Engineers describes how infrastructure and software architecture work together to... more
Games have much in common with other software, but also a number of unique... more
This book introduces a practical methodology for architecture design that any professional software engineer can use, provides structured methods supported by reusable chunks of design knowledge, and includes rich case studies that demonstrate how to use the methods. Using realistic examples, you ll master the powerful new version of the proven Attribute-Driven Design (ADD) 3.0 method and will learn how to use it to address key... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
Don't Put Your Resume Ahead of the Requirements (Nitin Borwankar) Chances... more
More than ever, the effective management of technology is critical for business competitiveness. For decades, technology leaders have struggled to balance agility, reliability, and security. The consequences of failure have never been greater whether it's the healthcare.gov debacle, cardholder data breaches, or missing the boat with Big Data in the cloud.
And yet, high performers using DevOps principles, such as Google, Amazon, Facebook, Etsy, and Netflix, are routinely... more
Developers and students will learn object-oriented analysis and design (OOA/D) through three iterations of two cohesive, start-to-finish case studies.... more
It was written by a 40-year computer veteran who wants to take the mystery out of computers and allow everyone to gain a true understanding of exactly what computers are, and also what they are not.
Years of writing, diagramming, piloting and editing have culminated in one easy to read volume that contains all of the basic principles of computers written so that everyone can... more
With dozens of design methods, examples,... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
Vicki BoykisThis is a textbook that covers how computers work from the ground up. It includes hardware, software, and operating systems. It’s a really thick book, but also a really good one! This is the book I’d recommend reading if you missed out on a formal computer science education. (Source)
Gorton's book helps resolve this predicament. It concisely describes the essential elements of knowledge and key skills required to be a software architect. The explanations encompass the essentials of architecture thinking, practices, and supporting technologies. They range from a general understanding of software structure and quality... more
Gruntwork cofounder Yevgeniy (Jim) Brikman walks you through code examples that demonstrate Terraform's simple, declarative programming language for deploying and managing infrastructure with a few commands. Veteran... more
This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs... more
Brutal Refactoring takes the next steps beyond all previous refactoring books, including Feathers' own highly-praised Working... more
-If both the arrival rate and service rate double, will the mean response time stay the same?
-Should systems really aim to balance load, or is this a convenient myth? -If a scheduling policy favors one set of jobs, does it necessarily hurt some other jobs, or are these "conservation laws" being misinterpreted?
-Do greedy, shortest-delay, routing strategies make sense in a server farm, or is what's good for the... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
Spring Microservices in Action teaches you how to use the... more
"Java 8 in Action" is a clearly written guide to the new features of Java 8. The book covers lambdas, streams, and functional-style programming. With Java 8's functional features you can now write more concise code in less time, and also automatically benefit from multicore architectures. It's time to dig in!
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Book
Every new version of Java is important, but Java 8 is a game changer. "Java 8 in Action" is a clearly written... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
The key? Make tough decisions about which processes you must execute well, then implement the IT systems needed to digitize those processes. Citing numerous companies worldwide,... more
The book presents 17 interrelated patterns ranging from idioms through architectural designs. They cover core elements of building concurrent and network systems: service access and configuration, event handling, synchronization,
... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
* Neural networks, a beautiful biologically-inspired programming paradigm which enables a computer to learn from observational data
* Deep learning, a powerful set of techniques for learning in neural networks
Neural networks and deep learning currently provide the best solutions to many problems in image recognition, speech recognition, and natural language processing. This book will teach you the core concepts... more
Quantum computing specialists Eric Johnston, Nic Harrigan, and Mercedes Gimeno-Segovia show you how to build the skills, tools, and intuition required to write... more
In "Composing Software", Eric Elliott shares the fundamentals of composition, including both function composition and object composition, and explores them in the context of JavaScript. The book covers the foundations of both functional programming and object oriented programming to help the reader better understand how to build and structure complex... more
Whether you're in charge of a small network or a large network, Networking All-in-One is full of the information you'll need to set up a network and keep it functioning. Fully updated to capture the latest Windows 10 releases through Spring 2018, this is the comprehensive guide to setting up, managing, and securing a successful network.
Inside, nine minibooks cover essential, up-to-date information for networking in systems such as Windows 10 and Linux, as well as best practices for security, mobile and... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
The computing world today is in the middle of a revolution: mobile clients and cloud computing have emerged as the dominant paradigms driving programming and hardware innovation today. The Fifth Edition of Computer Architecture focuses on this dramatic shift, exploring the ways in which software and technology in the cloud are accessed by cell phones, tablets, laptops, and other mobile computing devices. Each chapter includes two real-world examples, one mobile and one datacenter, to illustrate this revolutionary change.
Updated to cover the mobile computing... more
TECHNOLOGY SKILLS: building,... more
Computer Systems examines the key elements of all computer systems using an integrated approach that treats hardware and software as part of the same, larger system. Students gain important insights into the interplay between hardware and software and leave the course with a better understanding of a modern computer system less
In the 1980s, the tech revolution was kickstarted by a flood of relatively inexpensive, highly programmable computers like the Commodore. Now, a second revolution in computing is beginning with the Raspberry Pi. Learning Computer Architecture with the Raspberry Pi is the premier guide to understanding the components of the most exciting tech product available. Thanks to this book, every Raspberry Pi owner can understand how the computer works and how to access all of its hardware and software... more
Products from established electronics giants clashed with machines which often appeared to have been (or actually were) assembled in a backyard shed by an eccentric inventor. University professors were competing head to head with students in their parents' garages.
... more
Don't have time to read the top Software Architecture books of all time? Read Shortform summaries.
Shortform summaries help you learn 10x faster by:
- Being comprehensive: you learn the most important points in the book
- Cutting out the fluff: you focus your time on what's important to know
- Interactive exercises: apply the book's ideas to your own life with our educators' guidance.