Google Site Reliability Engineer (Mid-Level) Interview Preparation Guide

Site Reliability Engineer (SRE)
Google
Mid Level
7 rounds
Updated 6/18/2026

Google's SRE interview process for mid-level candidates combines technical depth with systems thinking and behavioral assessment. The process evaluates candidates across five core dimensions: coding proficiency, Linux internals and systems knowledge, troubleshooting and incident response capabilities, non-abstract large system design (NALSD), and cultural fit with Google's values. Mid-level candidates are expected to demonstrate strong independent problem-solving, the ability to own medium-sized projects, and emerging mentorship capabilities. The interview process includes an initial recruiter screen, two technical phone rounds, and four to five onsite interview rounds conducted over a single day.

Interview Rounds

1

Recruiter Screening

2

Technical Phone Screen 1: Coding and Problem-Solving

3

Technical Phone Screen 2: Systems, Troubleshooting, and Incident Response

4

Onsite Round 1: Coding and Algorithm Deep Dive

5

Onsite Round 2: Non-Abstract Large System Design (NALSD)

6

Onsite Round 3: Linux, Systems, and Troubleshooting Deep Dive

7

Onsite Round 4: Behavioral and Googleyness (Leadership and Culture Fit)

Frequently Asked Site Reliability Engineer (SRE) Interview Questions

Kubernetes Architecture, Operations, and TroubleshootingEasyTechnical
48 practiced

List common cloud and network-backed storage options used with Kubernetes (examples: AWS EBS, AWS EFS, GCE PD, Azure Disk, NFS) and briefly describe trade-offs in terms of performance, durability, multi-node attach, and typical use-cases.

Postmortems, Root Cause Analysis, and Blameless CultureMediumTechnical
69 practiced

You are asked to lead the postmortem after a significant production incident. Describe how you would structure the meeting: who attends, what evidence and timeline you prepare beforehand, how you keep the discussion evidence-first rather than defensive, and how you leave the meeting with owned, time-boxed action items.

Performance Troubleshooting & Incident ResponseEasyTechnical
60 practiced

Explain why p50 alone is insufficient for performance monitoring of user-facing services. Provide an example showing how p50 and p99 could tell different stories and one practical consequence of relying only on p50.

Project Delivery and Execution OwnershipEasyBehavioral
30 practiced

Tell me about a time you proactively removed a blocker, technical, process, or people, that was standing between your delivery and shipping. How did you spot it, what concrete steps did you take (technical fixes, workarounds, tooling, or just coordinating with the right people), whether and when you looped in others or escalated, and what measurably changed in your delivery timeline or team's velocity as a result.

Code Quality, Error Handling, and Defensive ProgrammingEasyTechnical
29 practiced

A boundary check validates that a value (an index, an offset, a size) falls within the range the code actually handles correctly, and it routinely catches real production bugs before they cause damage. Pick three DIFFERENT kinds of boundary bugs you've seen or can construct realistically, and for each: describe the bug it would cause if unchecked, the specific defensive check you'd add, and a unit test that would catch a regression if the check were later removed.

Growth Mindset and Learning AgilityEasyBehavioral
59 practiced

Do you see your skills and intelligence as fixed, or as things you can actively develop? Tell me what the difference between those two outlooks actually looks like in day to day behavior, particularly when work fails or when someone criticizes it.

Networking Fundamentals and ProtocolsHardTechnical
61 practiced

A packet capture of a failed connection attempt shows: the client sends SYN, the server responds SYN-ACK, the client retransmits SYN several times but never sends the final ACK, and the server's SYN-ACK is retransmitted once before the connection times out. List the plausible root causes for the client never completing the handshake (consider both network-level and host-level causes), and explain what evidence on the client versus the server would distinguish them.

Cross-Functional CollaborationHardTechnical
32 practiced

Different teams you support have very different risk tolerances: some want to ship continuously, others want maximum stability. How would you negotiate a shared policy that both sides can accept?

Graphs and Graph AlgorithmsEasyTechnical
23 practiced

Write a Java function that detects whether a directed graph contains a cycle. Input: int n (nodes 0..n-1) and an adjacency List<List<Integer>> graph. Use DFS with a recursion stack (visited and inStack arrays). Return true if a cycle exists, false otherwise. Target complexity O(V + E). Explain how you would modify the code to also return one cycle path if found.

Systems Performance Analysis & TuningEasyTechnical
79 practiced

You're on-call and receive an alert: a Linux process with PID 4321 is consuming 100% CPU but top shows it's stuck in userspace. Explain step-by-step how you'd use strace to diagnose what the process is doing. Include exact commands to attach to a running process, capture syscalls to a file, and how to interpret common syscalls (read, write, futex, poll). Mention -f, -p, -o and -c options and how to minimize overhead in production.

Additional Information

Want to create your own tailored preparation guide using our deep research?

Get Started for Free

Interview-Ready Courses

Visual-first, interactive, structured learning paths

Browse Site Reliability Engineer (SRE) jobs

AI-enriched listings across hundreds of company career pages

Explore Jobs