Background
3yr exp, BE CSE Tier-1
Curr Position: SDE2 equivalent at a Bank
Opportunity details
Location: Pune, India
Role: SDE (3-5yrs)
Applied: Applied via Referral
Date: Nov 2023
Interview Process
Round 1 - LLD
- Take home assignment for 24hrs
- There was a review round for the same. This round is something like a peer review round. Time: 90mins
- Question was around creating an alert monitoring service
- Component will get alerts from various services in ecosystem and based on rules like sliding window, tumbling window, thresholds, time, etc, we need to trigger some actions like send email, sms, etc
- Expectations were to explain your design (not line by line but an overview). Show them what SOLID and design principles you used and WHY.
- Your code will be tested on extensibillity, testability and ease of usage. I was asked to test the code on various test cases given by interviewer and show that test cases were handled. On of my friends was asked to extend the code to adapt new changes. He was tested on the number changes he had to do to accommodate the new changes.
Round 2 - DSA
- In office interview
- Time: 60min
- Question 1 - Similar to rotten oranges
- Question 2 - Greedy question like meeting schedule
- Question 3 - Monotnic stack question similar to finding next greater question as here
- I was able to solve all 3 questions with running code
- Expectation were to solve 2 questions with one running code and one pseudo code
- Result - Strong hire
Round 3 - HLD
- In office interview
- Time: 90 min
- Similar to this
- System was an internal system built in PhonePe
- The question was slowly built. The interviewer was not very experienced it seems because he took lot of time pinpointing what was needed.
- Description to best effort
- Basically customer koi Airtel charge kar rha hai
- Now phonepe doesnt directly go and add balance, we just send request to airtel and it’ll do its own processing. So this not a synchronous process as it might take lots of time and multiple hops. So we do it async. Design a system to handle this gracefully. Main focus was on designing system to callback airtel after an interval to check status of recharge.
- He looked for a overall flow from customer request to airtel call to updating that recharge is success
asked me to design different services that will be required. databases for the services. which databases to use. Kafka processing etc was also expected
- There was good discussion on database to choose, what data store (tables, schemas, etc) and queries to store and read them
- Knowledge on data processing jobs (spark kind of) was also expected.
- Result - Hire
Round 4 - HM
- Discussion mainly around what I worked on
- Interviewer grilled very hard on choices I made in my projects. Required me to give pros, cons and why I made the choice.
- Then he gave me some scenario to extend the system. It was to handle billions of request per day with PBs of data to scan through. Interview ended with me taking this as take home assignment
- Discussion around homework
I gave the solution involving bloom filters. The other solution I presented in very short as competitor was what the interviewer expected. Solution involved ETL pipelines, spark jobs, hive, parallel stream processing. However, I put on table the assumptions I had made, hence got some leverage
- Result - Weak hire
Overall Result: Hire
Offer details: https://leetcode.com/discuss/compensation/4848214/PhonePe-or-SDE-(3-5yrs)-or-Pune