Design Rate Limiting Infrastructure for mobile apps

Last updated: October 21, 2025

Quick Overview

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

Optiver
System Design
Software Engineer
Optiver
October 21, 2025
Software Engineer
Technical Screen
System Design
Easy

197

3

4,274 solved


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

Optiver asks this during the Technical Screen to assess your understanding of the full ML lifecycle. They want to see how you translate a business problem into an ML objective, design the feature pipeline, and plan for model monitoring and retraining.

What the Interviewer Expects
  • Map the business problem to a concrete ML objective
  • Propose reasonable features and a baseline model
  • Discuss basic model evaluation metrics
  • Outline a simple serving architecture
Key Topics to Cover
ML objective formulation and metric selection
A/B testing and experimentation
Online vs offline evaluation
Training pipeline and infrastructure
Feedback loops and model retraining
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
  • How would you debug a model that works well offline but poorly online?
  • How would you handle a 10x increase in prediction requests?
  • What is your model retraining strategy?
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. Rate Limiting Rules: Define rate limits based on user behaviors, geographic locations, and API endpoints.
  2. Dynamic Configuration: Allow for dynamic updates to ...
Capacity Estimation

Assuming Optiver has approximately 1 million active users accessing the mobile app, with an average of 10 API calls per user per hour, we can estimate the following:

  • Total API Calls per Hour: 1...

Submit Your Answer
Markdown supported

Related Questions