Design iCloud Photo Sync

Problem

Design an iCloud-scale photo & media sync service keeping a user's library consistent across iPhone, iPad, and Mac with end-to-end encryption.

Requirements

Functional:

  • Upload/download photos and videos
  • Sync edits and deletes across all devices
  • Conflict resolution when two devices edit offline
  • Shared albums

Non-functional:

  • 1B+ users, 100s of photos/user
  • Eventual consistency, but no lost edits
  • End-to-end encrypted
  • Mobile-friendly: bandwidth and battery aware

Discussion points

  1. Chunked upload + content-addressed storage (dedup)
  2. Per-device sync cursor / change feed
  3. Conflict resolution (vector clocks vs last-writer-wins)
  4. Thumbnail generation pipeline
  5. E2E encryption key management across devices
added …
LeaderboardSalaryAccount