Design a distributed Content Delivery System

Last updated: September 10, 2025

Quick Overview

Design a distributed content delivery system that handles millions of requests. Discuss trade-offs in consistency, availability, and performance.

Booking.com
System Design
Software Engineer
Booking.com
September 10, 2025
Software Engineer
Technical Screen
System Design
Hard

7

6

2,753 solved


Design a distributed content delivery system that handles millions of requests. Discuss trade-offs in consistency, availability, and performance.

ML system design at Booking.com goes beyond model selection. This Technical Screen question evaluates your ability to design end-to-end ML pipelines, from data collection to model serving, while considering production constraints like latency and reliability.

What the Interviewer Expects
  • Design the full ML lifecycle from data collection to model monitoring
  • Address cold start, exploration/exploitation, and model freshness
  • Discuss multi-objective optimization and ranking systems
  • Plan for model debugging, fairness, and bias mitigation
  • Design the feature store and training pipeline for scale
  • Address model versioning, canary deployments, and rollback strategies
  • Discuss the data flywheel and long-term system evolution
Key Topics to Cover
Feedback loops and model retraining
Monitoring and model degradation detection
Training pipeline and infrastructure
ML objective formulation and metric selection
Feature engineering and feature stores
How to Approach This
  1. Start by clarifying functional and non-functional requirements with the interviewer.
  2. Estimate the scale: QPS, storage, bandwidth. This drives your design decisions.
  3. Draw a high-level architecture first, then deep dive into 1-2 critical components.
  4. Discuss trade-offs explicitly (e.g., consistency vs availability, SQL vs NoSQL).
  5. Address failure scenarios, monitoring, and how the system handles 10x traffic spikes.
Possible Follow-up Questions
  • What would you do if model performance degrades over time?
  • How would you handle the cold start problem?
  • How would you handle a 10x increase in prediction requests?
  • How would you debug a model that works well offline but poorly online?
Practice a Similar Problem on Codemia

Solve a related problem with our interactive workspace, get AI feedback, and view detailed solutions.

Solve on Codemia
Sample Answer
Requirements

Functional Requirements

  1. Content Delivery: Serve millions of user requests for booking-related content, including images, reviews, and pricing information, with low latency.
  2. **Dynamic Con...
Capacity Estimation

Assuming Booking.com handles 100 million daily users.

  • Daily Requests: Each user makes an average of 10 requests, leading to approximately 1 billion requests per day.
  • Peak Traffic: Assume p...

Submit Your Answer
Markdown supported

Related Questions