Design Splitwise.

Medium
Company: Premium
GoogleAmazonUber

Imagine you're building a simplified version of Splitwise, a popular app for tracking shared expenses among friends. The core problem revolves around managing users, groups, and expenses, ensuring fair distribution of costs, and displaying settlement amounts to equalize debts. This isn't just about storing data; it's about designing a system that handles complex relationships between users, groups, and transactions, and does so in a way that's easy to understand, maintain, and extend.

This coding problem focuses on the core logic of splitting expenses and calculating who owes whom. We will focus on in-memory calculations for simplicity, rather than persistence.

Requirements

Think like an Architect

Before revealing the requirements, imagine you're in the interview right now."How would you clarify the scope with your interviewer?"

Premium Content

View detailed solutions.

UNLOCK PREMIUM