Round 1: Screening Round
Questions: Design a music library where we had to print the most played songs (by unique users). This was then extended to also add a function to return 3 most recently played songs. Full statement see round 1 of this interview experience.
Candidate's Approach
I was able to complete the first part and almost complete the second with a couple of bugs. Wasn't able to run completely the second part.
Interviewer's Feedback
I kept reaching out to HR for feedback and got scattered responses that we’ll get back. After almost 2 weeks, the HR reached out and said that the feedback is positive. The delay was due to the fact that the opening I applied to got closed, so they are considering me for some other position.
Round 2: HM Round
Questions: One project deep dive and situational questions.
Candidate's Approach
Went pretty smooth.
Interviewer's Feedback
No feedback provided.
Round 3: Coding Round
Questions: Design a key-value store. Extended to transactions. See the previously attached interview experience or this.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 4: Coding Round
Questions: Design an Excel sheet with two main functions:
set(cell, value/expression)
print() -> should print both raw and computed values.
Example:
set(A1, "=5+9+-8") set(A2, "5")
This was then extended to:
set(A1, "=A1+5") set(A3, "=A1")
Candidate's Approach
Created a Cell class and Map<String, Cell> for the sheet. Cell had an isExpression variable which I populated by checking if the input starts with "=". I suggested having different cell types i.e. StaticCell, ExpressionCell (didn't implement) but the interviewer wasn’t particularly excited about this. I calculated the expression values while printing lazily, but I told him at the end that we had a choice of calculating proactively using some sort of dependency graph or just do it lazily using recursion. I wouldn’t recommend my solution for the interview even though the feedback for the round was positive.
Interviewer's Feedback
Feedback for this round was positive.
Round 5: System Design
Questions: Design a hotel reservation aggregator. The only difference was that the hotel can be listed on other aggregators as well and we need to handle this.
Candidate's Approach
I moved this requirement to the end and designed the rest of the system before.
Interviewer's Feedback
Feedback for this round was borderline.
Round 6: HM Round
Questions: One project deep dive.
Candidate's Approach
Nice guy, was done with his questions in 30 mins and 15 mins I asked questions. Gave me back 15 mins of time from the interview.
Interviewer's Feedback
A couple of days later, I received the verbal confirmation of offer.