Design a Twitter-like service

Quick Overview

This question evaluates system design competencies including distributed systems, API and data modeling, feed-generation strategies, caching, pagination, consistency, and scalability for social feed functionality.

Design a Twitter-like service

Company: Asana

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Onsite

Design a simplified Twitter-like system that supports: - Users can post short messages (tweets). - Users can follow/unfollow other users. - Home timeline: show a user a feed of recent tweets from accounts they follow (reverse chronological). - View a user’s profile tweets. Cover: - APIs and core data model - High-level architecture and storage - Feed generation approach (fan-out on write vs fan-out on read) - Caching, pagination, and ranking (optional) - Consistency, reliability, and scalability considerations

Overview: This question evaluates system design competencies including distributed systems, API and data modeling, feed-generation strategies, caching, pagination, consistency, and scalability for social feed functionality.

|Home/System Design/Asana
Asana logo
Asana
Jan 7, 2026
mediumSoftware EngineerOnsiteSystem Design
21
0

Design a simplified Twitter-like system that supports:

  • Users can post short messages (tweets).
  • Users can follow/unfollow other users.
  • Home timeline: show a user a feed of recent tweets from accounts they follow (reverse chronological).
  • View a user’s profile tweets.

Cover:

  • APIs and core data model
  • High-level architecture and storage
  • Feed generation approach (fan-out on write vs fan-out on read)
  • Caching, pagination, and ranking (optional)
  • Consistency, reliability, and scalability considerations

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...