netflix logo

Netflix Interviews

1 experience41 reads
Netflix L4 | Rejected | Remote
netflix logo
Netflix
SDE IIRemoteRejected
November 12, 202541 reads

Summary

I recently interviewed for an L4 position at Netflix remotely and was ultimately rejected. The process included a technical phone screen, two problem-solving/coding rounds, a system design interview, and a hiring manager chat.

Full Experience

Hey folks, I recently went through the Netflix interview process for an L4 position, which was conducted remotely. I wanted to share my experience here.

My interview journey at Netflix consisted of several rounds:

Round 1: Recruiter Call (30 min)
This was a standard introductory call with the recruiter.

Round 1: Technical Phone Screen (60 min)
For this round, I was given a rate limit question. It focused on allowing a specific number of requests, say X, within Y seconds from a single client. The problem was quite similar in concept to LeetCode's 'Cache With Time Limit' problem.

Round 2: Problem Solving (60 min)
This round presented a unique scenario: 'You have 20 Linux servers and a 1Mbit/s connection (aggregate) to the mainland. How would you upgrade the OS while they're at sea? Bandwidth is expensive and unreliable.' It was a challenging problem requiring creative solutions under significant constraints.

Round 2: Coding (60 min)
Surprisingly, the coding question in this round was the exact same as the one from the Technical Phone Screen – another iteration of the rate limit problem.

Round 2: System Design (60 min)
This was a deep dive into designing a service discovery system. The prompt asked to 'Design a system to allow services to discover each other.' It further specified that a Service is composed of Tasks running on Nodes, with multiple Tasks from the same Service potentially on the same Node. Key requirements included ensuring traffic to new tasks when ready, redirecting traffic from stopping tasks, and avoiding sending traffic to overwhelmed tasks. The problem also provided clear assumptions about the existing compute system and scale figures (100k tasks, 10k nodes, 1k services).

Round 2: Hiring Manager (45 min)
The final round was a conversation with the hiring manager.

Ultimately, I was rejected for the L4 role. I'm still processing the feedback and reflecting on the challenging system design and problem-solving questions.

Interview Questions (3)

Q1
Rate Limiter (Requests per second)
Data Structures & AlgorithmsMedium

Implement a rate limiter that allows a maximum of X requests every Y seconds from a single client. The question was very similar to LeetCode problem 'Cache With Time Limit'.

Q2
Remote OS Upgrade with Limited Bandwidth
OtherHard

Given 20 Linux servers and a 1Mbit/s aggregate connection to the mainland, how would you upgrade their operating system while they are at sea? Bandwidth is expensive and unreliable.

Q3
Service Discovery System Design
System DesignHard

Design a system to allow services to discover each other. A Service is made of Tasks that run on Nodes. Multiple Tasks from the same Service may run on the same Node.

Requirements:

  • When a task starts, ensure it receives traffic when ready.
  • When a task stops, ensure callers send traffic to other service tasks.
  • If a task is overwhelmed (CPU pegged, memory GC, etc.), avoid sending more traffic.
Assumptions: You may assume the compute system is already in place, and you only need to deal with the spawn / termination / overwhelm of the tasks.

Scale:
  • Number of tasks: ~100k
  • Number of nodes: ~10k
  • Number of services: ~1k
  • Mean tasks per node: ~10
  • Mean tasks per service: ~100

Have a Netflix Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Netflix.