Diagrammatic

Real-time Chat System — System Design Interview Practice

Design a real-time messaging system like WhatsApp or Slack that supports group chats and file sharing. Work through the requirements, architecture trade-offs, and an interactive design review.

Requirements and concepts to consider

  • Real-time messaging between usersRequirement
  • Support group chats (up to 100 users)Requirement
  • Message history and persistenceRequirement
  • File sharing capabilitiesRequirement
  • Online/offline status indicatorsRequirement
  • Message delivery acknowledgmentsRequirement
  • Support for 50M daily active usersRequirement
  • real timeConcept to explore
  • websocketsConcept to explore
  • messagingConcept to explore
  • scalabilityConcept to explore
  • mobileConcept to explore
Diagrammatic — system design practice and architecture review.