Uber System Design Round
Summary
I had a system design round with Uber where I was asked to design a chat application similar to Facebook Messenger, focusing on key features like 1:1 and group conversations, offline user handling, and message history.
Full Experience
I recently interviewed with Uber and was presented with a system design challenge. The interviewer asked me to design a chat application similar to Facebook Messenger, focusing on several core features. I had to describe the overall system architecture, including server-side storage, APIs, and how various components would interact. Key aspects I needed to address included 1:1 and group conversations, handling offline users, delivery and read receipts, message history, and group management functionalities like adding or removing users.
Interview Questions (1)
Design a chat application like Facebook Messenger. Describe the system architecture, server-side storage, the API, components, data models. Explain how they would work together. Core features to focus on:
- 1:1 conversation (P0)
- Group conversation (P0)
- Offline users
- Delivery/Read / Delivery Receipt
- Message history
- Group management (add/remove user)