Round 1: Machine coding round
Questions: Design a in-memory splitwise application. Requirements:
- Design and implement an In Memory Expense sharing application where users should be able to add expenses and split it among users. Ex - Splitwise
- User should be able to add expense which could be divided equally.
- Expose a function to get all the expense added by user.
- Expose a function to get balance of a user [this should give final balance of user and simplified balance with each user].
- Expose a function to get all the expense where the user is part of.
- For interview we need only equal split to be implemented but solution should be extensible for other type of expense like unequal split or percentage split.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 2: High Level System design round
Questions: Build a notification service system which should handle multiple types of traffic.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 3: Hiring Managerial round
Questions: Specific question not provided.
Follow-up Question:
- The hiring manager deep dived into my current project, brainstorming the existing system, asking about the flaws inside it and how I would like to design it today if I were to.
Candidate's Approach
No approach provided.
Interviewer's Feedback
Feedback was not positive, leading to rejection in the HM round.