I got interviewed at Zepto for SE-1. I mailed my resume to the HR and call the call.
It had 4 rounds - DSA, LLD/HLD, HM, HR.
Round 1 (DSA)
It was from BarRaiser. He asked me the following 2 questions -
- https://leetcode.com/problems/valid-parentheses/description/
- It was a minor variation of this problem
We are given two arrays that represent the arrival and departure times of trains that stop at the platform. We need to find the minimum number of platforms needed at the railway station so that no train has to wait.
Examples 1:
Input: N=6,
arr[] = {9:00, 9:45, 9:55, 11:00, 15:00, 18:00}
dep[] = {9:20, 12:00, 11:30, 11:50, 19:00, 20:00}
Output:3I completed both the problems in 30 minutes. Asked for feedback. Got the mail next day to schedule next round.
Round 2 (HLD/LLD)
It was again from BarRaiser. He asked me the following question:
Design an e-commerce application with following features-
1. inventory management
2. handling large orders during festivals
3. add to cart, ordersHe asked me the basic pseudo code, database designs, API endpoints, request responses, status codes. Design patterns, the strategy used for inventory management, how will concurrency work in such a system.
I did all the features in 45 minutes, asked feeback. He gave me few points to consider for future.
Next day, I got a call for the HM round.
Round 3 (HM)
This round was with Engineering Head of Zepto. He came and asked a brief intro about me. Then we started a rapid fire Q&A about my projects and experiences -
- What are the de-merits of indexing?
- Connection pooling in databases
- Write a SQL query for students with marks >= 50 in 3 subjects
- Which columns should I index according to few given search patterns for the user
- Status codes - 2xx, 5xx, 4xx and its uses
- Redis caching (as it was mentioned in my resume, had around 5 minutes discussion on which request to cache, what kind of cache, how to monitor the cache hit rate)
- If we have used grafana, or an event trigger tools or not
- Chaos engineering - why to use it, what kind of metrics we got by performing chaos (mentioned in my resume)
- Why do we use caching?
- Is redis single/multi threaded? If so, how does it handle such huge no. of requests?
- Why do you want to join Zepto?
- What feature do you want to see in Zepto?
My interview ended at 5.45 PM, and I got an email at the same time about the feedback for that round that I have cleared the interview and they will contact me for further discussion.
I had another offer from Confluent - https://leetcode.com/discuss/compensation/5754364/Confluent-or-Software-Engineer-or-Remote


