The most practical, hands-on books on DevOps and software delivery

Why am I passionate about this?

I’ve spent more than a decade working on infrastructure, from my early days at LinkedIn, where we had to do a massive DevOps transformation to save the company, to co-founding Gruntwork, where I had the opportunity to work with hundreds of companies on their software delivery practices. From all of this, I can say the following with certainty: the DevOps best practices that a handful of the top tech companies have figured out are not filtering down to the rest of the industry. This is making the entire software industry slower, less effective, and less secure—and I see it as my mission to fix that.


I wrote...

Fundamentals of DevOps and Software Delivery: A Hands-On Guide to Deploying and Managing Software in Production

By Yevgeniy Brikman,

Book cover of Fundamentals of DevOps and Software Delivery: A Hands-On Guide to Deploying and Managing Software in Production

What is my book about?

There are many guides out there on how to write software. This book is a guide to software delivery: that is, all the processes, tools, and techniques required to run software in production. In particular, this book is a guide to DevOps, one of the methodologies used today to make software delivery vastly more efficient.

Whereas most DevOps content focuses on culture, this book is a hands-on guide that includes dozens of examples that show you how to run real systems and real code. You’ll start with the basics—a single server—and work all the way up to Kubernetes clusters, deployment pipelines, data systems, and more, giving you hands-on practice with all the core concepts and best practices of modern DevOps and software delivery.

Shepherd is reader supported. When you buy books, we may earn an affiliate commission.

The books I picked & why

Book cover of Infrastructure as Code: Dynamic Systems for the Cloud Age

Yevgeniy Brikman Why did I love this book?

This is a book for practitioners, by a practitioner, full of practical learnings that I was able to start using in my work immediately.

I especially appreciated the parts teaching the core principles of infrastructure as code (e.g., systems are disposable, consistent, can easily be reproduced, etc.), core practices of infrastructure as code (e.g., use definition files, self-documented systems and processes, version all the things, etc.), and the idea of antifragile systems (rather than just systems that you prevent from breaking) and autonomic systems (rather than just automated systems).

By Kief Morris,

Why should I read it?

1 author picked Infrastructure as Code as one of their favorite books, and they share why you should read it.

What is this book about?

Six years ago, Infrastructure as Code was a new concept. Today, as even banks and other conservative organizations plan moves to the cloud, development teams for companies worldwide are attempting to build large infrastructure codebases. With this practical book, Kief Morris of ThoughtWorks shows you how to effectively use principles, practices, and patterns pioneered by DevOps teams to manage cloud-age infrastructure.

Ideal for system administrators, infrastructure engineers, software developers, team leads, and architects, this updated edition demonstrates how you can exploit cloud and automation technology to make changes easily, safely, quickly, and responsibly. You'll learn how to define everything as…


Book cover of Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation

Yevgeniy Brikman Why did I love this book?

This is one of those books that changed how I thought about and approached software development. First, the book addressed the pain points that I had run into so often: the problems with infrequent, manual deployments, the outages caused by changing configuration rather than source code, the nightmare of merge conflicts that you get from long-lived feature branches, and so on.

Then, it showed how to flip the typical software development process on its head through CI / CD, changing the default from “our software is broken, and we need an integration and release process to get it working” to “our software is always working, and we can release it at any time.” Once I read it, I could never go back to the old way.

By Jez Humble, David Farley,

Why should I read it?

1 author picked Continuous Delivery as one of their favorite books, and they share why you should read it.

What is this book about?

Winner of the 2011 Jolt Excellence Award!

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 complexity of its code base.

Jez Humble and David Farley begin by presenting the foundations of a rapid,…


Book cover of Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems

Yevgeniy Brikman Why did I love this book?

This is the best overview of data storage and distributed systems—two key concepts for building almost any piece of software today—that I've seen anywhere. Martin does a wonderful job of taking a massive body of research and distilling complicated concepts and difficult trade-offs down to a level anyone can understand.

I learned a lot about replication, partitioning, linearizability, locking, write skew, phantoms, transactions, event logs, and more. I'm also a big fan of the final chapter, The Future of Data Systems, which covers ideas such as "unbundling the database", end-to-end event streams, and an important discussion on ethics in programming and data systems.

By Martin Kleppmann,

Why should I read it?

2 authors picked Designing Data-Intensive Applications as one of their favorite books, and they share why you should read it.

What is this book about?

Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords? In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain…


Book cover of Kubernetes in Action

Yevgeniy Brikman Why did I love this book?

Whether you like it or not, you probably have to use Kubernetes these days, and this is my favorite book for learning it. It covers absolutely everything you need to know, starting with a basic intro to Docker and going deeper and deeper, all the way to Kubernetes internals.

I also liked the organization of the book, which makes it easy to skip to the parts you need, and the way the book shows the depth and breadth of everything Kubernetes does (deployment, monitoring, config management, secrets management, service discovery, volumes, SSH access, and much more), and how this is a practical and hands-on guide, with tons of clear examples, diagrams, and code samples.

By Marko Luksa,

Why should I read it?

2 authors picked Kubernetes in Action as one of their favorite books, and they share why you should read it.

What is this book about?

Description

With Kubernetes, users don't have to worry about which specific machine in their data center their application is running on. Each layer in their application is decoupled from other layers so they can scale, update, and maintain them independently.

Kubernetes in Action teaches developers how to use Kubernetes to deploy self-healing scalable distributed applications. By the end, readers will be able to build and deploy applications in a proper way to take full advantage of the Kubernetes platform.

Key features

* Easy to follow guide

* Hands-on examples

* Clearly-written

Audience

The book is for both application developers as…


Book cover of Practice of Cloud System Administration, The: DevOps and SRE Practices for Web Services, Volume 2

Yevgeniy Brikman Why did I love this book?

This book felt like a chance to sit with a few experienced Ops people and hear their war stories.

The book is full of concrete, actionable learnings that are essential for running software, including operational requirements (e.g., configuration, draining, hot swaps, feature toggles, graceful degradation, etc.), software architecture (e.g., three-tier web service, four-tier web service, load balancing models etc.), scaling patterns (e.g., horizontal duplication, service splits, caching, etc.), resiliency patterns (software vs hardware resiliency, spare capacity, failure domains, etc.), and much more.

I loved being able to pick up decades of experience and hard-won knowledge by just flipping through a few pages of a book! 

By Thomas Limoncelli, Strata Chalup, Christina Hogan

Why should I read it?

1 author picked Practice of Cloud System Administration, The as one of their favorite books, and they share why you should read it.

What is this book about?

"There's an incredible amount of depth and thinking in the practices described here, and it's impressive to see it all in one place."

-Win Treese, coauthor of Designing Systems for Internet Commerce

The Practice of Cloud System Administration, Volume 2, focuses on "distributed" or "cloud" computing and brings a DevOps/SRE sensibility to the practice of system administration. Unsatisfied with books that cover either design or operations in isolation, the authors created this authoritative reference centered on a comprehensive approach.

Case studies and examples from Google, Etsy, Twitter, Facebook, Netflix, Amazon, and other industry giants are explained in practical ways that…


5 book lists we think you will like!

Interested in computer networks, management, and computer security?

11,000+ authors have recommended their favorite books and what they love about them. Browse their picks for the best books about computer networks, management, and computer security.

Computer Networks Explore 11 books about computer networks
Management Explore 142 books about management
Computer Security Explore 27 books about computer security