Round 1: Bar Raiser Round
Questions:
- Coin Change Problem: A dynamic programming problem.
- Design E-commerce LLD: I was asked to design a low-level architecture for an e-commerce system.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 2: LLD Discussion
Questions:
- Design an Online Survey System: Despite being informed it was a coding round, I was asked to design a system for an online survey.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 3: Coding Round
Questions:
- Arrays-related question: I solved it with an optimized solution in 20 minutes.
- Design a system similar to Google Drive: The scenario involved uploading a 100 GB file over a network with 10 Mbps speed, which was unstable.
Candidate's Approach
I fumbled a bit here as I didn’t have much experience in breaking files into chunks and handling such uploads. I admitted that I was unfamiliar with this area, but the interviewer kept pressing for more details, which added to the pressure.
Interviewer's Feedback
No feedback provided.
Round 4
Questions:
- Design cricBuzz HLD: Discussion went very well.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Verdict
Rejection, still I don't understand why they rejected me.
Takeaways
Don’t rush to an optimized solution too quickly. Start with a brute-force approach and walk through the problem gradually, even if it seems inefficient at first. This helps use up time and avoids leaving too much time for the interviewer to shift focus to irrelevant or unexpected questions that might not be directly related to your expertise.