A curated collection of publicly available resources on how technology and tech-savvy organizations around the world practice Site Reliability Engineering (SRE)
How they SRE

Introduction
How They SRE How They SRE is a curated knowledge repository of Site Reliability Engineering (SRE) best practices, tools, techniques, and culture adopted by leading technology or tech-savvy organizations.
Numerous organizations frequently share their insights and expertise, encompassing best practices, tools, and techniques that shape their engineering culture. They do this through various public platforms such as engineering blogs, conferences, and meetups. This repository compiles and presents content gathered from these sources.
Topics
- Site Reliability Engineering
- Hiring and Building SRE teams
- SRE Culture
- DevOps
- Monitoring & Observability
- Alerting
- Incident Response & Post-Mortem
- On-Call
- Testing in Production
- Chaos Engineering
- Automation
- Performance
- Platform Engineering
Organizations
Achievers
Blog Posts
- Enter the Abattoir - Building 'à la carte' gitops tooling
- Scaling Production Globally — The service mesh facelift (Part-1)
- Scaling Production Globally - Solving observability problems for developers (Part-2)
- Load Testing Kubernetes: Building a Framework (Part-1)
- Load Testing Kubernetes: Resolving bottlenecks and improving performance (Part-2)
Airbnb
Blog Posts
- Automated Incident Management Through Slack
- Detecting Vulnerabilities With Vulnture
- Alerting Framework at Airbnb
- When The Cloud Gets Dark — How Amazon’s Outage Affected Airbnb
- Intelligent Automation Platform: Empowering Conversational AI and Beyond at Airbnb
- Production Secret Management at Airbnb
- Automating Data Protection at Scale, Part 1
- Automating Data Protection at Scale, Part 2
- Automating Data Protection at Scale, Part 3
- Dynamic Kubernetes Cluster Scaling at Airbnb
Algolia
Blog Posts
Alibaba Cloud
Blog Posts
- Why Are the Top Internet Companies Choosing SRE over Traditional O&M?
- Architecture and Practices of Bilibili's Real-time Platform
Asana
Blog Posts
- How Asana uses Asana: Security incident response
- How Asana ships stable web application releases
- Analysis of recent downtime & what we’re doing to prevent future incidents
- Developer environment: Achieving reliability by making it fast to reset
- Three security tactics for every IT leader to consider this fall
ASOS
Blog Posts
- Playing the blame-less game
- A day in the life of… Cat S (Head of Reliability Engineering)
- An AKS Performance Journey: Part 1 — Sizing Everything Up
- An AKS Performance Journey: Part 2 — Networking It Out
- Cyber Security @ ASOS.com
- Security Operations 24x7
- The skills we look for in Cyber Security Incident Response
Atlassian
Blog Posts
- Best practices for change management in the age of DevOps
- Automated testing: 5 lessons from Atlassian’s Kubernetes team on testing infrastructure as code
- How to export Kubernetes events for observability and alerting
- Incident Postmortem Template
BackMarket
Blog Posts
Baidu
Videos
- Anomaly Detection on Golden Signals
- NetRadar: Monitoring the Datacenter Network
- Let the Chaos Begin—SRE Chaos Engineering Meets Cybersecurity
Basecamp
Blog Posts
- Inside a CODE RED: Network Edition
- Three Basecamp outages. One week. What happened?
- Basecamp 2 and Basecamp 3 search outage report
- Reducing Incident Escalations at Basecamp
Books
Bloomberg
Videos
- Capacity Planning and Performance Enhancement with Page Reference Sampling
- Why SREs can't afford to NOT do Chaos Engineering
- Tracing Real-Time Distributed Systems
- The Bloomberg Story: Building SRE Teams in an "Immeasurable" Organisation
- Visibility into Loggers (and Other Low Level Services)—Seeing the Trees from the Forest
Booking.com
Blog Posts
- How Reliability and Product Teams Collaborate at Booking.com
- Incidents, fixes, and the day after
- Troubleshooting: A journey into the unknown
Videos
- Sailing the Database Seas: Applying SRE Principles at Scale
- SLOs for Data-Intensive Services
- Benefits of Taking the Less Traveled Road with Containers Infrastructure
Capital One
Blog Posts
- Automate Application Monitoring with Slack
- Automate AWS Infrastructure with Boto 3: AWS Health Check
- Active-Active Shared-Nothing Database Architecture
- The 3 R’s of SREs: Resiliency, Recovery & Reliability
- 5 Steps to Getting Your App Chaos Ready
- 4 Real-World Scenarios That Read Like Chaos Engineering Experiments
- Embrace the Chaos … Engineering
- 3 Lessons Learned From Implementing Chaos Engineering at Enterprise
- A Deep Dive Into Seamless Blue/Green Deployment Using AWS CodeDeploy
- Secure Docker Containers Require Secure Applications
- 4 Steps for Pairing the Cloud and DevOps to Improve Resiliency
- Container Ready Applications with Twelve-Factor App and Microservices Architecture
- Deploying with Confidence — Minimize Risk, Maximize Resiliency With Canary Deployments on AWS
- Architecting for Resiliency
- Continuous Chaos — Introducing Chaos Engineering into DevOps Practices
- The Mon-ifesto Part 1: Metrics
Major incidents & analysis reports
Videos
- Banking on Continuous Delivery - Capital One
- Continuous Chaos in DevOps - Capital One
- DevOps at Capital One: Focusing on Pipeline and Measurement
- Automating the Management of the Operational Health of Cloud Accounts at Scale
Coinbase
Blog Posts
DAZN
Blog Posts
DBS
Blog Posts
- Presenting at iThome’s SRE Conference: Our DBS SRE Transformation Journey Thus Far
- Debunking the seven most popular Site Reliability Engineering myths
- How To Use SRE To Cultivate A Blameless Culture In The Workplace
- Site Reliability Engineering at DBS Bank
- Automating Configuration Management at Scale
- How DBS dispelled the myths of Chaos Engineering
- Double, Double Toil and Trouble
Videos
DeepSource
Blog Posts
- Redis diskless replication: What, how, why and the caveats
- How to setup Vault with Kubernetes
- Breaking down zero downtime deployments in Kubernetes
Dream11
Blog Posts
- Deployment At Scale: Story Behind Dream11’s In-House Blue-Green Deployment Platform ‘OneClick’.
- Enhancing security and trust with AWS WAFv2
- Lessons learned from running GraphQL at scale
- Break circuits, save Kong 🦍
- Finding Order in Chaos: How We Automated Performance Testing with Torque
- Maintaining hyper-sonic releases at Dream11
- To Scale In Or Scale Out? Here’s How We Scale at Dream11
- Building Scalable Real Time Analytics, Alerting and Anomaly Detection Architecture at Dream11
Dropbox
Blog Posts
- Dropbox Engineering Career Framework - Reliability Engineer (SRE)
- Atlas: Our journey from a Python monolith to a managed platform
- Monitoring server applications with Vortex
- Athena: Our automated build health management system
- Interested in becoming a Site Reliability Engineer?
Videos
eBay
Blog Posts
- Resiliency and Disaster Recovery with Kafka
- SRE Case Study: Triaging a Non-Heap JVM Out of Memory Issue
- SRE Case Study: Mysterious Traffic Imbalance
- Zero Downtime, Instant Deployment and Rollback
- How eBay’s Notification Platform Used Fault Injection in New Ways
Video
Epic Games
Video
Etsy
Blog Posts
- Improving the Deployment Experience of a Ten-Year Old Application
- How Etsy Prepared for Historic Volumes of Holiday Traffic in 2020
- Your brain on progress
- Etsy’s Debriefing Facilitation Guide for Blameless Postmortems
- Opsweekly: Measuring on-call experience with alert classification
- Demystifying Site Outages
- Blameless PostMortems and a Just Culture
- Measure Anything, Measure Everything
Videos
Expedia
Blog Posts
- Automating Performance Standards
- Error Budget Policy - Part 1 - Adoption at Expedia Group
- Error Budget Policy - Part 2 - Practices at Expedia Group
- Using Fault-Injection to Improve our new Runtime Platform’s Reliability
- Learning from Incidents at Expedia Group
- Improving Vrbo Homepage Loading Experience
- Troubleshooting 502 errors: ECS Checklist
- Getting Started with Elasticsearch
- All about ISTIO-PROXY 5xx Issues
- Autoscaling in Kubernetes: Why doesn’t the Horizontal Pod Autoscaler work for me?
- How to Keep Your Kubernetes Deployments Balanced Across Multiple zones
- Are Your Dropwizard Latency Metrics Misleading You?
- The Cost of 100% Reliability
- Creating Monitoring Dashboards
- Using Bash for DevOps
Fastly
Videos
- SRE & Product Management: How to Level up Your Team (and Career!) by Thinking like a Product Manager
- Resilience Engineering Mythbusting
G-Research
Blog Posts
- Our SRE Journey at G-Research
- The SRE Journey Continues
- OpenTSDB Meta Cache – trade-offs for performance
Getaround
Blog Posts
GitHub
Blog Posts
- How we improved availability through iterative simplification
- How we improved push processing on GitHub
- How GitHub uses merge queue to ship hundreds of changes every day
- Fixing security vulnerabilities with AI
- GitHub’s Engineering Fundamentals program: How we deliver on availability, security, and accessibility
- How GitHub uses GitHub Actions and Actions larger runners to build and test GitHub.com
- The GitHub Security Lab’s journey to disclosing 500 CVEs in open source projects
- CodeQL team uses AI to power vulnerability detection in code
- Addressing GitHub’s recent availability issues
- Building organization-wide governance and re-use for CI/CD and automation with GitHub Actions
- Enabling branch deployments through IssueOps with GitHub Actions
- Using ChatOps to help Actions on-call engineers
- Partitioning GitHub’s relational databases to handle scale
- Increasing developer happiness with GitHub code scanning
- Why (and how) GitHub is adopting OpenTelemetry
- Improving large monorepo performance on GitHub
- Deployment reliability at GitHub
- Improving how we deploy GitHub
- Building On-Call Culture at GitHub
- Reducing flaky builds by 18x
- The evolving role of operations in DevOps
- Getting started with DevOps automation
- MySQL High Availability at GitHub
Major incidents & analysis reports
- GitHub Availability Report: August 2024
- GitHub Availability Report: July 2024
- GitHub Availability Report: June 2024
- GitHub Availability Report: May 2024
- GitHub Availability Report: April 2024
- GitHub Availability Report: March 2024
- GitHub Availability Report: February 2024
- GitHub Availability Report: January 2024
- GitHub Availability Report: December 2023
- GitHub Availability Report: November 2023
- GitHub Availability Report: October 2023
- GitHub Availability Report: September 2023
- GitHub Availability Report: August 2023
- GitHub Availability Report: July 2023
- GitHub Availability Report: June 2023
- GitHub Availability Report: May 2023
- GitHub Availability Report: April 2023
- GitHub Availability Report: March 2023
- GitHub Availability Report: February 2023
- GitHub Availability Report: January 2023
- GitHub Availability Report: December 2022
- GitHub Availability Report: November 2022
- GitHub Availability Report: October 2022
- GitHub Availability Report: September 2022
- GitHub Availability Report: August 2022
- GitHub Availability Report: July 2022
- GitHub Availability Report: June 2022
- GitHub Availability Report: May 2022
- GitHub Availability Report: April 2022
- GitHub Availability Report: March 2022
- GitHub Availability Report: February 2022
- GitHub Availability Report: January 2022
- GitHub Availability Report: December 2021
- GitHub Availability Report: November 2021
- GitHub Availability Report: October 2021
- GitHub Availability Report: September 2021
- GitHub Availability Report: August 2021
- GitHub Availability Report: July 2021
- GitHub Availability Report: June 2021
- GitHub Availability Report: May 2021
- GitHub Availability Report: April 2021
- GitHub Availability Report: March 2021
- GitHub Availability Report: February 2021
- GitHub Availability Report: January 2021
- GitHub Availability Report: December 2020
- GitHub Availability Report: November 2020
- GitHub Availability Report: August 2020
- GitHub Availability Report: July 2020
- Introducing the GitHub Availability Report
- February service disruptions post-incident analysis
- October 21 post-incident analysis
- February 28th DDoS Incident Report
- Incident Report: Inadvertent Private Repository Disclosure
Videos
GitLab
Blog Posts
- This SRE attempted to roll out an HAProxy config change. You won't believe what happened next...
- My week shadowing a GitLab Site Reliability Engineer
- Update: Elasticsearch lessons learnt for Advanced Global Search
- Lessons in iteration from a new team in infrastructure
- How we optimized infrastructure spend at GitLab
- How we scaled async workload processing at GitLab.com using Sidekiq
- Inside GitLab: How we release software patches
- What tracking down missing TCP Keepalives taught me about Docker, Golang, and GitLab
- How we used delayed replication for disaster recovery with PostgreSQL
GoCardless
Blog Posts
- Deploying Software at GoCardless: Open-Sourcing our “Getting Started” Tutorial
- How we compress Pub/Sub messages and more, saving a load of money
- Fear-free PostgreSQL migrations for Rails
- Observability at GoCardless: a tale of API performance improvement
- Debugging the PostgreSQL query planner
- Zero-downtime Postgres migrations - the hard parts
- In search of performance - how we shaved 200ms off every POST request
Major incidents & analysis reports
- Incident review: Service outage on 25 October 2020, Vault TLS expiry
- Incident review: API and Dashboard outage on 10 October 2017
GoDaddy
Blog Posts
- Kubernetes Gated Deployments
- Kubernetes External Secrets
- Kubernetes - A Practical Introduction for Application Developers
- An Intuitive Node.js Client for the Kubernetes API
Gojek
Blog Posts
- Introducing Skynet: Infrastructure as Code for Gojek
- Scaling Our Geo-Search Service For 10x Load
- Why We Swear by the RCA
- How We Upgrade Kubernetes on GKE
- How We Monitor Apache Airflow in Production
Goldman Sachs
Blog Posts
- SecDb Observability Journey
- Chaos Testing an Application on AWS
- Forecasting Capacity Outages Using Machine Learning to Bolster Application Resiliency
- Providing 99.9% Availability and Sub-Second Response Times with Sybase IQ Multiplexes by Using HAProxy
- Building Multi-Region Resiliency with Amazon RDS and Amazon Aurora
- Enabling Highly Available Trino Clusters at Goldman Sachs
- Observability at Scale
- Infrastructure and the Command Chain Pattern
- Mobile CICD with EC2 macOS
- Announcing CatchIT - Source Code Secret Scanner
- Building Platforms for Data Engineering
Videos
Google
Blog Posts
- Accelerating incident response using generative AI
- Pitfalls and Patterns in Microservice Dependency Management
- SRE Practices & Processes
- Google site reliability using Go
- Three months, 30x demand: How we scaled Google Meet during COVID-19
- SRE Classroom: Distributed PubSub
- How SRE teams are organized, and how to get started
Videos
- Get Your Non-SREs Oncall Ready!
- Reliable Data for Large ML Models: Principles and Practices
- New Grads Becoming New SREs: Catalyzing a “Circle of Life” in Ireland
- [SRE for [cyber]security](https://www.usenix.org/conference/srecon23emea/presentation/fischbach)
- Artificial Intelligence: How Much Will It Cost You?
- What's the Difference Between DevOps and SRE? with Seth Vargo and Liz Fong-Jones of Google
- Risk and Error Budgets’ with Seth Vargo and Liz Fong-Jones of Google
- Pragmatic Automation’ with Max Luebbe of GCP
- Must Watch! - Google SRE YouTube Playlist
- Squish Level Objectives: How SRE can Help Align Technical Work to User Benefit
- Implementing Distributed Consensus
- The SRE I Aspire to Be
- SRE Classroom, Or, How to Design a Reliable Distributed System in 3 Hours
- Zero Touch Prod: Towards Safer and More Secure Production Environments
- All of Our ML Ideas Are Bad (and We Should Feel Bad)
- The Map Is Not the Territory: How SLOs Lead Us Astray, and What We Can Do about It
- Deploying SRE Training Best Practices to Production: How We SRE'ed Our SRE Education Program
- Bigtable: A Journey from Binary to Service and the Lessons Learned along the Way
- Practical Instrumentation for Observability
- What Is ML Ops: Solutions and Best Practices for DevOps of Production ML Services
- Unified Reporting of Service Reliability
- How to Trade off Server Utilization and Tail Latency
- Keeping the Balance: Internet-Scale Loadbalancing Demystified
- From Black Box to a Known Quantity: How to Build Predictable, Reliable ML-based Services
- Mindfulness in SRE: Monitoring and Alerting for One's Self
- Pragmatic Automation
- Sublinear Scaling in Practice: The 1k SRE Project
- Strategies to Edit Production Data
- The Curse of SRE Autonomy and How to Manage It
- Scaling SRE Organizations: The Journey from 1 to Many Teams
- SRE Classroom - How to Design a Distributed System in 3 Hours
- Using PRDs and User Journeys to Design User-Friendly Tools
- How Google SRE and Developers Work Together
- SREcon21 - Experiments for SRE
Grab
Blog Posts
- Our Journey to Continuous Delivery at Grab (Part 1)
- Our Journey to Continuous Delivery at Grab (Part 2)
- Designing Resilient Systems: Circuit Breakers or Retries? (Part 1)
- Designing Resilient Systems: Circuit Breakers or Retries? (Part 2)
- Designing Resilient Systems Beyond Retries (Part 3): Architecture Patterns and Chaos Engineering
- Orchestrating Chaos using Grab's Experimentation Platform
- How We Designed the Quotas Microservice to Prevent Resource Abuse
- How We Scaled Our Cache and Got a Good Night's Sleep
Grammarly
Blog Posts
Gusto
Blog Posts
Halodoc
Blog Posts
Heroku
Blog Posts
IBM
Blog Posts
Indeed
Blog Posts
- Indeed SRE: An Inside Look
- Being Just Reliable Enough
- Automating Indeed’s Release Process
- Sloth, a Tool for Inducing Network Failures’ with Preetha Appan of Indeed.com
Videos
Indeed
Blog Posts
Khan Academy
Blog Posts
LinkedIn
Blog Posts
- Rethinking site capacity projections with Capacity Analyzer
- Insights into a Product SRE team at LinkedIn
- Hiring SREs at LinkedIn
- Open source update: School of SRE
- Fixing Linux filesystem performance regressions
- Production testing with dark canaries
- Smart alerts in ThirdEye, LinkedIn’s real-time monitoring platform
- Iris mobile: An open source, mobile interface for incident management
- LinkedOut: A Request-Level Failure Injection Framework
- Eliminating toil with fully automated load testing
- The Makeup of Successful Geographically-Distributed SRE Teams: Part 1
- The Makeup of Successful Geographically-Distributed SRE Teams: Part 2
- Automating Your Oncall: Open Sourcing Fossor and Ascii Etch
- Resilience Engineering at LinkedIn with Project Waterbear
- Hiring SREs at LinkedIn, 2017
- Open Sourcing Iris and Oncall
- Building the SRE Culture at LinkedIn
- Failure is Not an Option
- MTTD and MTTR Are Key
- What Gets Measured Gets Fixed
Videos
- Growing the Site Reliability Team at LinkedIn: Hiring is Hard -- Greg Leffler
- 9 Years of Failure: How Racing Crappy Cars Made Me a Better SRE
- Weathering the Storm: How Early Warnings Save the Farm
- Unconference: Unsolved Problems in SRE
- Leading without Managing: Becoming an SRE Technical Leader
- Why Does (My) Monitoring Suck?
- Traffic Forecasting and Stress Testing Infrastructure
- Collective Mindfulness for Better Decisions in SRE
- TCP—Architecture, Enhancements, and Tuning
- Over 600 Million Members and Hundreds of Micro Services: How We Scaled Our Monitoring System to Keep up
- Understanding Business Metrics Can Make You a Better SRE
- Code-Yellow: Helping Operations Top-Heavy Teams the Smart Way
- Differences in SRE Implementations across Companies
Tools
Loggi
Blog Posts
Loveholidays
Blog Posts
- Dynamic alert routing with Prometheus and Alertmanager
- Making loveholidays 18% faster with HTTP/3
- Enforcing best practice on self-serve infrastructure with Terraform, Atlantis and Policy As Code
- The 5 principles that helped scale loveholidays
- Realtime Fastly logs with Grafana Loki for under $1 a day
Macquarie
Blog Posts
- Our DevSecOps journey with Golang
- Pipeline Configuration as Code with Kotlin
- DevOps and Segregation of Duties
- Macquarie embraces DevOps
- Scaling a Kubernetes Platform across the Enterprise
Mattermost
Blog Posts
- Monitoring Cloud Environments at Scale with Prometheus and Thanos
- How We Use Sloth to do SLO Monitoring and Alerting with Prometheus
Meituan (美团)
Blog Posts
Mercari
Blog Posts
- Who Watches the Watchmen? Keeping an Eye on Our Monitoring Systems
- What the Microservices SRE Team are doing as SRE Evangelists
- What it’s like to work as an embedded microservices SRE
- The Merpay SRE Team: Past and future
- Embedded SRE at Mercari
- What the SRE team wants to achieve with the development team
- DevSecOps: What Is It and Why Is It Gaining Momentum in the Industry?
- How do we share troubleshooting skills
- Datadog Dashboard at Scale w / Terraform
Meta
Blog Posts
- Leveraging AI for efficient incident response
- Improving Meta’s SLO workflows with data annotations
- SLICK: Adopting SLOs for improved reliability
- More details about the October 4 outage
- Update about the October 4th outage
Videos
- Scheduling at Scale: eBPF Schedulers with Schedext
- A Customer Service Approach to SRE
- How (Not) to Scale a Project: A Post-Mortem
- Releasing the World's Largest Python Site Every 7 Minutes
- Using ML to Automate Dynamic Error Categorization
Microsoft
Videos
- SLI & Reliability Deep-Dive’ with David N. Blank-Edelman of Microsoft
- Ironies of Automation: A Comedy in Three Parts’ with Tanner Lund of Microsoft
- Sustainable Software Engineering & SREs
- Study on Human Factors and Team Culture to Improve Pager Fatigue
- Prioritizing Trust While Creating Applications
- Building Resilience: How to Learn More from Incidents
- A Tale of Two Postmortems: A Human Factors View
- Availability—Thinking beyond 9s
- Ironies of Automation: A Comedy in Three Parts
- The Ops in Serverless
MIRO