Global social media platform with posts, media, follows, feeds, search, notifications, recommendations, and moderation.
Single service for auth, posts, timeline, and media with one database and object storage.
What was missing: Edge/CDN, caching, async fan-out, and isolation.
Why that's risky: SPOF and poor surge handling.
What gets added: Nothing yet (MVP).
Trade-offs: Fast to build but not production-ready.
Add edge ingress, CDN for media, and throttling before compute.
What was missing: Global media delivery and ingress protection.
Why that's risky: Origin overload and latency spikes.
What gets added: CDN, edge, rate limiting.
Trade-offs: Cache invalidation and signed URLs.
Scale API layer and cache hot reads for profiles and timelines.
What was missing: Redundancy and hot-path caching.
Why that's risky: Bottlenecks and slow reads.
What gets added: LB replicas and cache.
Trade-offs: Cache invalidation and session management.
Introduce domain services (profile, posts, social-graph, media/origin, feed) and dedicated stores.
What was missing: Domain separation and social graph.
Why that's risky: Tight coupling and slow queries on joins.
What gets added: Dedicated services and stores; cache in front of reads.
Trade-offs: More services and contracts to manage.
Decouple write fan-out to followers and add notifications and search indexing.
What was missing: Async fan-out and discovery.
Why that's risky: Slow posts and tight coupling to reads.
What gets added: Queue + fan-out worker, notifications, search index.
Trade-offs: Eventual consistency of feeds and index freshness.
Add ranking service for feeds, moderation, and monitoring; keep system production-grade.
What was missing: Ranking signals, moderation, and observability.
Why that's risky: Low relevance feeds and poor incident visibility.
What gets added: Ranking service, moderation, monitoring/tracing.
Trade-offs: Complex coordination and eventual consistency of feeds.
Require a client-supplied idempotency key for post creation. Persist the key with the final post ID and return the stored result on retries. Use a queue/outbox to publish to feed fan-out and notifications asynchronously.
Write fan-out materializes follower timelines asynchronously for fast reads at scale; read fan-out composes on read, reducing write load but increasing read latency. Many systems mix both: materialize partial feeds for hot users and compose on read for long tails.
Index user handles, names, hashtag tokens, and post text into a Search Index asynchronously via a queue. Query the index for autocomplete, trending, and discovery; do not scan the OLTP databases.
Apply token bucket or sliding window rate limits at the edge per IP and per user. Backed by a fast cache store. Monitor for anomalies and add circuit breakers on hot endpoints.
You're in the middle of an interview session. Leaving now will end your current attempt.
Explore concept overviews, real-system examples, key tradeoffs, and interview talking points for each roadmap section.
You've conquered this phase. These are the skills you now own: