AdvancedSecurity ArchitectureDefensiveDevSecOps

Building Secure and Reliable Systems

Best Practices for Designing, Implementing, and Maintaining Systems

5 / 5

Google's site-reliability and security teams jointly write down what it actually takes to build systems that are both safe and dependable, from threat models and design reviews to rollback culture and crisis response.

Buy on Amazon

As an Amazon Associate we earn from qualifying purchases. The link above is sponsored.

Published
2020
Publisher
O'Reilly Media
Pages
558
Language
English

Read this if

Staff-and-up engineers, SREs, and security leads designing or operating systems where reliability and security must be argued for in the same room. The book treats safety and security as the same engineering discipline, which is the right model and almost nobody else publishes it.

Skip this if

Readers who want a tooling tutorial or vendor-neutral checklists. The case studies are Google-shaped, and the patterns assume you have the discipline (postmortems, code review, paved roads) to execute them. If your org cannot stop a deploy, half the book will read as aspirational.

Key takeaways

  • Reliability and security share a common substrate: both are about designing for failure modes you cannot fully predict, and both decay if not exercised.
  • Recovery, not prevention, is the core skill of mature security organizations; the rollback, response, and recovery chapters are the heart of the book.
  • Most security wins come from boring infrastructure (paved roads, default-secure libraries, code review, sandboxing) rather than detection magic.

Notes

Pair with the original SRE book and Site Reliability Workbook for the reliability half of the argument, and with Threat Modeling: Designing for Security (Shostack) for the design-review motion. The book is freely readable on Google's site (sre.google/books), but the print edition is worth it for the cross-team study sessions it tends to spawn. Read alongside Designing Secure Software (Kohnfelder) to fill in the application-layer gap.