// Comparison

Building Secure and Reliable Systems vs Designing Secure Software: Which Should You Read?

Two cybersecurity books on Defensive, compared honestly: who each is for, what each does best, and which to read first.

Advanced
5/52020
Building Secure and Reliable Systems

Best Practices for Designing, Implementing, and Maintaining Systems

Heather Adkins, Betsy Beyer, Paul Blankinship, Piotr Lewandowski, Ana Oprea, Adam Stubblefield

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.

Intermediate
5/52021
Designing Secure Software

A Guide for Developers

Loren Kohnfelder

Loren Kohnfelder, the original PKI author, on how to weave security thinking through requirements, design, implementation and operations rather than bolt it on at the end.

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.
Senior developers and architects who already write code well and now want to design systems that don't ship CVEs. Kohnfelder is the author who literally wrote the X.509 paper; the book is a career's worth of design wisdom in 312 pages.

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.
Beginners or readers wanting hands-on tooling. The book is design-level: principles, patterns, and case studies. Pair with implementation-level books for the line-of-code view.

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.
  • Secure-by-design is mostly avoided pitfalls; the book's enumeration of common-but-fatal mistakes is the cleanest mental checklist a designer can carry.
  • Trust boundaries are the single most useful concept in secure design; the book teaches you to see them in any architecture.
  • Most security debates inside engineering organizations resolve to a handful of repeated trade-offs (defense in depth vs. simplicity, blocking vs. logging, fail-open vs. fail-closed); the book names them and provides the language for the conversation.

How they compare

Building Secure and Reliable Systems and Designing Secure Software are both rated 5/5 in our catalog. Pick by topic preference and reading style rather than by rating.

Building Secure and Reliable Systems is pitched at advanced level. Designing Secure Software is pitched at intermediate level. Read the easier one first if you're not yet comfortable with the topic.

Building Secure and Reliable Systems and Designing Secure Software both cover Defensive, so reading them in sequence reinforces the same material from different angles.

Keep reading

Related topics