# Build a Photo Sharing App for Up to 1 Billion Users: System Design Interview with a FAANG Engineer

An episode of [Whiteboard Confidential](https://invisiblenetwork.ai/podcast/1831824137), 19 Aug 2025, 1 h 01 min.

Audio: https://anchor.fm/s/10816ac98/podcast/play/107067154/https%3A%2F%2Fd3ctxlq1ktw2nl.cloudfront.net%2Fstaging%2F2025-7-19%2F405921253-44100-2-04e2e7f583ead.mp3

REPLAY EPISODE: Curious how to approach large-scale design interviews? This is the level of depth, structure, and clarity that top companies like Stripe and Meta are actively looking for. In this mock system design interview, a senior engineer is asked to design a photo-sharing app (something like Instagram, but from scratch and at massive scale). What follows is a masterclass in thoughtful architecture: from exploring nuanced functional and nonfunctional requirements to tackling schema design, RESTful APIs, and infrastructure choices under realistic constraints. The candidate works through challenges like privacy controls, feed generation, follow request flows, and media storage for 1 billion daily active users—all while communicating clearly and methodically. You’ll see them navigate trade-offs around consistency vs. availability, break down how to serve images efficiently with CDNs, and set up queues for asynchronous photo processing. Sign up to book coaching or to watch more interviews in our showcase: https://www.interviewing.io See the interviewer’s feedback and transcript here: https://start.interviewing.io/showcase/B0pirlqbsofX Or view other FAANG interviews: https://interviewing.io/mocks?company=faang Disclaimer: All interviews are shared with explicit permission from the interviewer and the interviewee, and all interviews are anonymous. interviewing.io has the sole right to distribute this content. Timestamps: 00:00 Introduction 00:58 Interview Begins 02:00 Clarifying assumptions: privacy, authentication, feeds 06:45 Discussing follow requests and celebrity suggestions 09:00 Metadata and interaction features (likes, comments) 12:00 Non-functional requirements and scale (1B DAUs!) 15:00 Schema design begins: Users and Follows 20:00 Designing the Photo entity (metadata, location, blob storage) 27:00 Comment schema + verified users 31:00 Designing upload & metadata API endpoints 35:45 Designing follow request and response APIs 41:00 Designing the user’s feed + pagination 44:00 High-level architecture begins: services, DBs, queues 48:00 Document store vs. relational DB for photo storage 52:00 Serving photos via CDN + Follow service interaction 56:00 Final review and detailed feedback from interviewer 01:00:00 Encouragement on focusing more on requirements depth

Shows are listed from Apple Podcasts' charts and directory, and Podcast Index where it is used. Every show and episode belongs to its publisher and plays from the publisher's own feed; this site hosts none of them.
