Design a Image Processing Service

Last updated: September 6, 2025

Quick Overview

Design a event-driven image processing system that handles millions of requests. Discuss trade-offs in consistency, availability, and performance.

Slack
System Design
Software Engineer
Slack
September 6, 2025
Software Engineer
Onsite
System Design
Medium

9

6

2,730 solved


Design a event-driven image processing system that handles millions of requests. Discuss trade-offs in consistency, availability, and performance.

This ML system design question from Slack's Onsite tests your ability to think about ML systems at scale. The interviewer expects discussion of data quality, feature stores, model serving infrastructure, and A/B testing strategy.

What the Interviewer Expects
  • Define clear ML objectives with appropriate loss functions and metrics
  • Design a comprehensive feature engineering pipeline
  • Discuss model selection with trade-offs (complexity vs interpretability vs latency)
  • Plan online and offline evaluation strategies including A/B testing
  • Address serving infrastructure: batch vs real-time, latency requirements
  • Consider data quality, labeling strategy, and feedback loops
Key Topics to Cover
Training pipeline and infrastructure
Model serving and latency optimization
Data collection and labeling strategy
Monitoring and model degradation detection
Online vs offline evaluation
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 run A/B tests on different model versions?
  • What would you do if model performance degrades over time?
  • 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:
    • The system must process image uploads from users in real-time, applying filters, resizing, and compression as needed.
    • Support for batch processing of images for ...
Capacity Estimation
  • User Base: Assume 10 million active users.
  • Image Upload Rate: Average of 5 images per user per day leads to:
    • Total daily uploads = 10,000,000 users * 5 images = 50,000,000 images/day. ...

Submit Your Answer
Markdown supported

Related Questions