mirror of
				https://github.com/mxssl/sre-interview-prep-guide.git
				synced 2025-11-04 10:12:34 +03:00 
			
		
		
		
	
			
				
					
						
					
					0258fd254b65aba6819471167397e2afeb2556d7
				
			
			
		
	Site Reliability Engineer (SRE) Interview Preparation Guide
This repository is an attempt to consolidate useful resources for Site Reliability Engineer (SRE) interview preparation.
Basics
- Simple: What happens when you type in ‘www.cnn.com’ in your browser?
 - Detailed: What happens when you type google.com into your browser's address box and press enter?
 
Linux
Boot Process
- An introduction to the Linux boot and startup processes
 - What happens when we turn on computer?
 - What happens when we turn on computer?
 - From Power up to login prompt
 
Filesystem
- Understanding Inodes
 - Understand UNIX / Linux Inodes Basics with Examples
 - Understanding proc filesystem
 - Common Mount Options
 - Understanding Linux filesystems: ext4 and beyond
 
Kernel
- Explain the basics of Linux kernel
 - Kernel Space and User Space
 - Linux Kernel Process Management
 - Linux Addressing
 - Linux Kernel Memory Management
 - STACK AND HEAP
 - Paging and Segmentation
 - Linux Kernel System Calls
 - The Virtual Filesystem
 - Concurrency and Race Conditions
 - Memory Leak
 - What is a kernel Panic?
 
Troubleshooting
Networking
- Network protocols for anyone who knows a programming language
 - Introduction to Linux interfaces for virtual networking
 - Multi-tier load-balancing with Linux
 - Introduction to modern network load balancing and proxying
 - Load Balancing Algorithms
 
Containers
Kubernetes
- Deploying and Scaling Microservices with Docker and Kubernetes
 - What happens when ... Kubernetes edition!
 - Kubernetes Production Patterns
 - Kubernetes production best practices
 - A Guide to the Kubernetes Networking Model
 
Infrastructure as code / Configuration management
CI/CD
- 7 Pipeline Design Patterns for Continuous Delivery
 - CI/CD patterns
 - Six Strategies for Application Deployment
 
Clouds
Programming
Go (Golang)
- A tour of Go
 - Go by Example
 - Learn Go with Tests
 - Getting up and running with Go
 - Effective Go
 - Go Design Patterns
 - Go Memory Management
 
Big O Notation, Algorithms and Data Structures
- AlgoExperts
 - Hacking a Google Interview – Handout 1
 - Hacking a Google Interview – Handout 2
 - Hacking a Google Interview – Handout 3
 
System design
- SystemsExpert course from AlgoExpert
 - Grokking the System Design Interview
 - The System Design Primer
 - Crack the System Design Interview
 - System design interview for IT companies
 - Web Architecture 101
 - What's in a Production Web Application?
 
Monitoring
Processes
- Incident Response
 - Postmortems
 - Runbooks
 - Identifying and tracking toil using SRE principles
 - Building SRE from Scratch
 
Interview
SRE interview process
Interview Questions
- A collection of questions to practice with for SRE interviews
 - SRE Interview Questions
 - Sysadmin Test Questions
 - Kubernetes job interview questions
 - DevOps Guide
 - Questions I ask in SRE interviews
 - DevOps Roadmap: Learn to become a DevOps Engineer or SRE
 
Blogposts
- SRE Interviews in Silicon Valley
 - Preparing the SRE interview
 - How to Get Into SRE
 - My Job Interview at Google
 - Path to Site Reliability Management
 - Becoming a Site Reliability Engineer
 
Books
SRE books
- Site Reliability Engineering
 - The Site Reliability Workbook
 - Seeking SRE
 - Building Secure and Reliable Systems
 - Implementing Service Level Objectives
 
Linux
- Linux Kernel Development (3rd Edition)
 - UNIX and Linux System Administration Handbook (5th Edition)
 - Linux Pocket Guide, 3rd Edition
 
Networking
Troubleshooting and Performance
Courses
Description