Team file sharing

DesignMedium35 min

Your task

Design a simple file-sharing service for a team. A member uploads a file (up to ~100 MB), gets a shareable link, and other members can download it; some files are private to the uploader and some are shared with the whole team. Storage should be durable and the app server shouldn't be a bottleneck for large transfers. Cover where files live, the data model, and how downloads and access control work.

It covers

  • Object storage
  • Access control