System Design Simulator
File Storage
Design object storage for user uploads with metadata and access control.
Al Beltran Engineering Lab
Loading simulator…
How the challenge works
- Metadata and ACLs live in your database. Bytes live in object storage.
- Signed URLs keep credentials off the client and bandwidth off your API boxes.
Key concepts
Control plane vs data plane
Auth, virus scan, and sharing rules are control-plane work. Transfer is data-plane.
Common mistakes
- Streaming 2 GB PDFs through Next.js or Spring controllers.
- Using a search cluster as a file system.
Recommended architecture
- API + database for metadata, object storage for bytes, CDN for public/hot files, workers for scan and thumbnails.
Interview tips
- Mention multipart upload and content-type allow-lists without being asked twice.
Related challenges
Built by Al Beltran