Katkat

Design a Google Photos–like service

PinterestSoftware Engineer · Onsite

Last updated

This question evaluates proficiency in designing large-scale distributed media systems, testing competencies in distributed storage and caching, ingest pipelines, CDN-backed delivery, indexing/search, sync/conflict resolution, access control/privacy compliance, and cost/operational planning.

Design a Google Photos–like service for billions of photos and videos. Cover client upload workflows (mobile/desktop), media ingestion, metadata extraction, deduplication and content hashing, storage architecture (hot/cold tiers), CDN delivery, sharing and permissions, search and indexing (by time, location, EXIF), thumbnail/transform pipelines, sync across devices, privacy/compliance, disaster recovery, and cost estimation. Provide high-level APIs, data models, partitioning/sharding strategies, and choices for consistency and availability.