Airbnb·Software Engineer·Onsite - System Design / Architecture
Jun 2026
Airbnb system design round focused entirely on building a group chat backend, the kind of thing you'd see in their host-guest messaging product. Covered a lot of ground: storage, real-time delivery, unread counts, the whole thing. Felt like a reasonable interview but there were a few moments where I got lost in the weeds.
- Design the backend for a real-time group chat system supporting multi-party conversations, message history, and unread counts at scale.
- What clarifying questions would you ask before designing a group chat system, and how do the answers change your design?
- Walk through the data model for a chat system and explain how you'd guarantee message ordering within a conversation.
- How would you design real-time message delivery to online users across millions of concurrent connections?
- How do you track unread message counts per user per conversation efficiently, and how do you keep them accurate as messages are read?
- How do you handle message history pagination efficiently as the conversation grows?
- How would you guarantee a message is never lost if the server crashes after acknowledging the sender but before fan-out completes?
- How would your design change if group conversations could have 100,000+ members instead of a few hundred?
- How would you implement message edit, delete, and recall while keeping every participant's view consistent?
“This is a big one and I underestimated how much the interviewer wanted me to decompose it upfront.” The rest of the author's notes on Software Engineer interview at Airbnb, Onsite - System Design / Architecture round, covers how they worked through the question, what the panel pushed back on, and what they would do differently.
View Post