Round 1
Questions:
Question 1:
The problem was related to implementing a "copy-paste" functionality using a class. The challenge was to design a system where:
- You can copy any number of words, maintaining their order.
- If you copy a word again, the order is refreshed (e.g., if you copied "interview", "dsa", "a", and then copied "interview" again, the order should become "dsa", "a", "interview").
- The paste function would receive a string, and you needed to check if that string exists in the copied list. If it exists, return the string; if not, return "-1".
Question 2:
She asked me how C++ implements hash maps internally. I explained the underlying concepts and working mechanisms of hash maps in C++.
Leadership Principles:
- Time when you received feedback: I shared an example from my internship, where I received feedback on improving my code quality.
- A time when you faced a problem and how you handled it: I spoke about a technical issue I faced during a project and how I collaborated with my team to resolve it using a structured approach.
Candidate's Approach
I first implemented a brute-force solution using a simple vector, which took O(N) time for both the copy and paste operations. She then asked me to optimize the solution. I used a map-based approach, which optimized the copy function to O(log N) and the paste function to O(1) on average.
Interviewer's Feedback
No feedback provided.
Round 2
Questions: Leadership Principles:
- A time when you went beyond your responsibilities: I shared a story about how I developed a testing tool for the QA team. The interviewer asked how long testing took before and after the tool's implementation, which was unexpected.
- A time when you achieved a goal despite challenges: I discussed how I had a goal to crack JEE Advanced when I was in my high school.
- A project with a strict deadline: I explained the challenges I faced during a project with a tight deadline and how I overcame them. He asked a cross question about design challenges.
Question 1:
The problem was to design four functions:
- Initialize user_id, window_size, and max_request for a user.
- Check if the current request for a user is allowed, based on the time window.
- Check how many requests were approved in the last window.
- Check how many requests were rejected in the last window.
Candidate's Approach
I first implemented a brute-force solution, which took O(N) time. Then, I optimized the solution using binary search, which was fairly straightforward.
Interviewer's Feedback
No feedback provided.
Round 3
Questions: Leadership Questions:
- A time when you had to debug a problem: I shared a story about debugging a data pipeline issue. The interviewer dug deep into the technical details of the code, the data flow, and the fix, asking questions like "Was the data homogeneous or heterogeneous?" I got stuck at a few points.
- A time when you received critical feedback: I mentioned receiving feedback on my pull request code review, where I was asked to avoid excessive conditional nesting. He asked for more details about the task and the code itself, which caught me off guard.
- A time when you had a disagreement with a teammate: I answered this question without much trouble, but I still felt the interviewer was not fully satisfied.
Candidate's Approach
No approach provided.
Interviewer's Feedback
He mentioned that all three interviewers would meet to discuss my feedback, and based on their discussion, they would forward it to the recruiter.