Design file-embedding storage system

Quick Overview

This interview question evaluates ML product requirements, data/labeling, modeling, serving architecture, evaluation, monitoring, and trade-offs in a realistic interview setting. A strong answer for Design file-embedding storage system states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

Design file-embedding storage system

Company: Adobe

Role: Software Engineer

Category: ML System Design

Difficulty: hard

Interview Round: Technical Screen

##### Question Design a system that generates embeddings for user-uploaded documents, images, and videos (each ≤ x MB) and stores them in a database; cover ingestion, preprocessing, model selection, scalability, storage schema, and retrieval.

Quick Answer: This interview question evaluates ML product requirements, data/labeling, modeling, serving architecture, evaluation, monitoring, and trade-offs in a realistic interview setting. A strong answer for Design file-embedding storage system states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

|Home/ML System Design/Adobe
Adobe logo
Adobe
Aug 4, 2025, 10:55 AM
hardSoftware EngineerTechnical ScreenML System Design
16
0

Design file-embedding storage system

System Design: Multimodal Embedding Service for User Uploads

Context

You are designing a backend service that, for each user-uploaded asset, generates vector embeddings and stores them for search and retrieval.

  • Supported asset types: documents (PDF/DOCX/TXT), images (PNG/JPEG), and videos (MP4).
  • Maximum upload size per asset: x MB (configurable; assume x is a limit enforced by the API).
  • The system must cover: ingestion, preprocessing, model selection, scalability, storage schema, and retrieval.
  • Assume multi-tenant usage and that asynchronous processing is acceptable (embeddings ready within seconds to minutes).

Requirements

  1. Ingestion: Validate and accept uploads, handle security checks, and persist raw assets.
  2. Preprocessing: Extract text from documents, handle OCR for scanned pages, handle frames/transcripts for videos, and normalize images/videos.
  3. Model Selection: Choose models for text, image, and video embeddings (and speech-to-text where needed); justify trade-offs.
  4. Scalability: Design for horizontal scale, efficient GPU/CPU utilization, and cost control; ensure observability and fault tolerance.
  5. Storage Schema: Define where raw assets, metadata, and vectors live, including partitioning and indexing choices.
  6. Retrieval: Support text, image, or video queries that retrieve relevant documents/images/videos; include cross-modal search.

Clarifying Questions to Ask Guidance

  • Clarify users, core use cases, read/write patterns, scale, latency, availability, and data retention.
  • State explicit assumptions before making sizing or architecture decisions.
  • Prioritize the functional path first, then address reliability, security, observability, and rollout.

What a Strong Answer Covers Guidance

  • A scoped requirements summary with concrete non-goals and success metrics.
  • ML-specific data, model, evaluation, serving, and monitoring choices.
  • Reasoned trade-offs among simple and scalable designs, including bottlenecks and failure modes.
  • A validation, monitoring, migration, and launch plan appropriate for the risk level.

Follow-up Questions Guidance

  • What breaks first at 10x traffic or data volume?
  • How would you degrade gracefully during dependency failures?
  • What metrics and alerts would prove the design is healthy after launch?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...