Round 1: Phone Screening
Questions:
- Discussed favorite project
- Scope of work
- Day to day activities
- Spoke about interview process
- Asked for 2 weeks before attempting to schedule screening interview
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Round 2: Coding Screening Round
Questions:
- Separate odd and even integers, place odd integers in the first part of the array, followed by even integers.
- Clarified requirements and edge cases like length of array, null or empty array.
- Coded quickly, completed dry run and discussed if solution solves edge cases.
- Sum of root to leaf values in binary tree and represent in array.
- Same approach as above.
Candidate's Approach
- Clarified requirements and edge cases for the first question.
- Explained an optimized approach for handling the separation of odd and even integers.
- Completed dry run for both questions.
Interviewer's Feedback
- Strong communication.
- Missed edge case like negative number in the first question and integer overflow.
- Interviewer expected the candidate to come up with all edge cases independently.
Round 3: Onsite Interview
Questions:
- Coding Round 1:
- Closest element to target in BST (return any closest, not necessarily the smallest node).
- Given a m*n binary array where value 1 represents blockage, 0 represents empty cell. Find the path from source (0,0) to target (m-1,n-1).
Candidate's Approach
- Followed the same approach as in the coding screening round.
- Took a long example for dry run which wasted time.
- Initially confused about whether it had to be the shortest path, then switched to a DFS approach after clarification.
- Spent time on coding the iterative DFS solution and focused on code modularity, which led to time management issues.
Interviewer's Feedback
No feedback provided.
Round 4: Coding Round 2
Questions:
- K closest points from origin.
- Discussed approach using minHeap.
- Questions about time complexity and space complexity if maxHeap was chosen.
- Dot product of vectors.
- Follow-up: What if one vector is sparse? What optimizations would be used?
Candidate's Approach
- Explained the approach using minHeap and discussed edge cases.
- Mentioned the need to research maxHeap implementation in O(n) after being informed by the interviewer.
- Discussed various solutions for the dot product, including map and arraylist solutions, and binary search.
Interviewer's Feedback
No feedback provided.
Round 5: System Design
Questions:
- Design an online coding platform that shows a leaderboard.
- Discussed the solution using NoSQL DynamoDB but faced multiple follow-up questions regarding schema definition.
- Jumped to designing the actual leaderboard using Redis sorted set.
Candidate's Approach
- Started with a general solution but was challenged on the schema design for NoSQL.
- Spent significant time on schema definition and had to rush through the actual leaderboard design.
Interviewer's Feedback
No feedback provided.
Round 6: Behavioral
Questions:
- Discussed a project in detail, including the number of lines of actual code written.
- Addressed conflicts with a colleague and a manager, providing non-technical examples.
Candidate's Approach
No approach provided.
Interviewer's Feedback
No feedback provided.
Outcome: Rejected after 2 weeks with no feedback.