The first round was mostly discussion-based.
Topics Covered
The interviewer spent a good amount of time discussing my architecture decisions and how I had built AI-powered solutions at work.
This round focused on:
Design a cache with limited capacity.
Implement:
SmartCache(int capacity)get(int key)put(int key, int value)Use:
✅ HashMap → O(1) lookup
✅ Doubly Linked List → Maintain usage order
Operations:
get() → Move node to front
put()
get() → O(1)put() → O(1)After writing the solution, the interviewer asked me to:
Everything went smoothly, and the follow-up discussion was positive.
❌ Rejected
The feedback was that the role was primarily for a Python Developer.
Although:
...the expectation was to code in Python, while I chose Java.
For language-specific backend roles, always ask the interviewer which programming language they prefer before starting the coding round. A correct solution isn't always enough if the interview is evaluating proficiency in a particular language.
Hopefully this experience helps someone preparing for similar interviews. Good luck! 🚀