Round 1 (DSA/OS/Experience)
Questions:
- Discuss your projects and potential enhancements.
- DSA question: 3Sum
- How does the set data structure work internally?
- How does HashMap work internally?
- What happens if there are collisions in two hashes in HashMap? How would you store and retrieve it?
- Explain ACID properties.
- What is a deadlock?
- Discuss transactions in a database.
- Some Linux commands.
Candidate's Approach
I provided three different approaches to the 3Sum problem in around 35 minutes, which satisfied the interviewer. I also answered all the follow-up questions regarding data structures and database concepts effectively.
Interviewer's Feedback
The interview went perfectly, and I was informed that I answered all questions well. I received a call after 2 hours for the second round.
Round 2 (HM Round)
Questions: Given a sequence of events:
e1, e2, e3, .... [e1:k1, e2:k2, e3:k1, e4:k3, e5:k2, e6:k4, e7:k1] 3 e1 <- e3, e6, e7 e2 <- e5, e6 e4, e6
The task was to process events based on keys in the order they came, using k threads in Golang.
Candidate's Approach
I managed to code the solution with just 5 minutes remaining. The interviewer was supportive, providing hints and collaborating on the problem-solving process.
Interviewer's Feedback
The interviewer was satisfied with my performance and provided information about the team I would potentially join.
Result
I followed up with HR after 2 days, but the result was delayed multiple times. After more than a month of follow-ups, I was informed that I was put ON-HOLD and would be contacted if there were any changes.