Software Engineer (SDE)
Interview Date
January 2024 (Application), Offer received after a week of interviews.
Result
Selected
Difficulty
Challenging, especially the system design round.
Rounds
5 rounds
Drive Type
Full-Time, Off-Campus (through referral)
Topics asked
Detailed experience
College: Not Specified (Candidate was SDE1 at PhonePe)
Interview Date: January 2024 (Application), Offer received after a week of interviews.
Interview Type: Full-Time, Off-Campus (through referral)
Result: Selected
Difficulty: Challenging, especially the system design round.
Rounds: 5 rounds
Topics Asked: Data Structures, Algorithms, Multithreading, Operating Systems, System Design, Behavioral
The candidate, an SDE1 with 1-2 years of experience, applied for an SDE position requiring 2+ years of experience through a referral in January 2024. The recruiter contacted them after about two weeks, and a screening round was scheduled.
Round 1 - Screening Round (Multithreading): This round involved solving a DSA problem followed by a multithreading scenario. It was conducted on the Coderpad platform, where the candidate had to write and run code. The interviewer cross-questioned the choice of data structure, algorithm, and their time and space complexities. The problem statement was similar to the LeetCode "Web Crawler problem". This round lasted for an hour and went well.
Round 2 - Multithreading: This round also involved solving a multithreading problem on Coderpad and lasted for 45 minutes. It required explaining different resource allocation policies in OS along with their pros and cons. The candidate explained all approaches and successfully implemented the FIFO solution for a resource allocation problem in a voting agency with a single bathroom accommodating Democrats and Republicans.
Round 3 - DSA: This was a standard problem-solving round. The problem statement was to implement a data structure to generate random numbers between 1 to N without repeating numbers in a window until all numbers are exhausted. The candidate initially provided a solution using hash sets (O(1) time, O(N) space), but the interviewer requested an array-based solution. After discussion, it was solved using arrays and built-in methods, by creating sections in the array with push_back and pop_back.
Round 4 - System Design: This was the candidate's first system design interview. The problem involved designing a messaging component between services like Kafka and RabbitMQ. Discussions included high-level design, API design, and implementation logic for APIs between publishers and subscribers.
Round 5 - Hiring Manager (HM): This round was with the VP of the organization and involved behavioral questions, reasons for switching, and a thorough grilling on past experiences and projects. The candidate found this round hard and was unsure of the results.
The interviews were challenging, but the candidate received the offer after a week.