Round 1: Machine Coding
Questions:
- Conducted on Gmeet with all candidates (40+ in a single meeting).
- Question clarification (30 min): Can clarify questions with interviewers.
- Coding (90 min): Need to complete their requirements. Can use your favorite IDE.
Takeaway: Since time is very limited, focus on requirements over design.
Machine Coding 1.1: 45 min
- Interviewer: SDE 3
- After code seems can validate, they will schedule for 45 min.
- Focused on extensibility and good coding standards.
- Proper design pattern to be used.
- Asked questions on extensibility and tested all the above requirements with many inputs.
Feedback: Interviewer seemed happy with my design and told me to wait for other rounds.
Takeaway: Since there is very little time to build, even the interviewer knows that. But you need to build in a way that it can be easily extendable.
Candidate's Approach
No approach provided.
Interviewer's Feedback
Interviewer seemed happy with the design and encouraged the candidate to wait for other rounds.
Round 2: PS/DS
Questions:
- Clone stack without using space.
- Explained brute force with space.
- Came up with a recursive solution.
- Design data structure to get, put, delete, random in O(1) time.
- Used set and map, then list and map.
- Rotten oranges.
- Explained approach with some hints.
- BFS approach.
- Made pseudo code and dry ran with an example.
Feedback: Interviewer was very happy with my thought process. When I asked why he asked me 3 questions instead of the usual 2, he mentioned that I completed the first 2 within 30 min, which is why he asked another to evaluate.
Takeaway: Speak your approach to the interviewer so that they can help if you are going in the wrong direction. Practice dry runs yourself.
Candidate's Approach
No approach provided.
Interviewer's Feedback
Interviewer was very happy with the candidate's thought process and appreciated the completion of the first two questions quickly.
Round 3: System Design
Questions:
- Given problem statement: Design a task scheduler service.
- Functional requirements.
- Non-functional requirements.
- High-level design in draw.io.
- Entities.
- DB schema.
- API.
Feedback: Interviewer seemed not happy with my design.
Takeaway: Stick with functional and non-functional requirements. Once mutually understood, then start other design. I was confused about how the task scheduler works, which affected the rest of the design.
Candidate's Approach
No approach provided.
Interviewer's Feedback
Interviewer was not satisfied with the design presented by the candidate.
Final Outcome: HR called and informed that the system design was not positive, so they would not be moving forward.