Round 1 (DSA, Java, Spring Boot)
Questions:
- The interviewer began by asking questions on Java, then moved on to exception handling.
- He asked me to write code using two classes to demonstrate the difference between
throws
andthrow
. - After that, he asked about immutable classes and requested that I implement an immutable Car class that contained a mutable Engine class.
- Following this, we shifted to a DSA question, where I was asked to write code for a problem similar to the one found here.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 2 (Low-Level Design - LLD)
Questions:
- The interviewer gave me a problem statement on implementing a load balancer.
- The task required writing an API to handle load balancing by implementing two algorithms.
Candidate's Approach
I had 35 minutes to complete the coding task, during which I implemented the Round Robin and Least Weighted Connection algorithms. Afterward, the interviewer asked me about data structures that could optimize the algorithms, particularly when dealing with millions of requests.
Interviewer's Feedback
No feedback provided.
Round 3 (Hiring Manager Round)
Questions:
- The hiring manager took a deep dive into my work experience and the projects I had worked on in my previous company.
- He asked questions about database optimizations, comparing Postgres with TiDB, and DynamoDB with Postgres.
- He asked several technical questions related to Spring Boot concepts.
- We discussed design patterns, particularly the Strategy and Factory patterns.
- Finally, he asked in-depth questions about Kafka and messaging queues in general.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.