Blinkit · Junior — 3 rounds, DSA + system design + culture fit, offer accepted at 30 LPA
Background
I had around one year of experience at a large MNC. Despite the stability, I felt learning opportunities were limited and most of my work was low-impact. I wanted to move to a fast-paced product company with challenging engineering problems. I made the risky decision to resign before securing another offer so I could focus entirely on interview preparation.
Recruiter Screening
A recruiter reached out to schedule the first round, explained the process and expectations, and briefly discussed the role, team structure, and work culture. Slots were scheduled quickly and the interaction was smooth.
The process consisted of three rounds:
- Problem Solving
- System Design
- Culture Fit
Round 1 — Problem Solving
Interviewer: SDE-III (5 years experience) | Duration: 60 minutes | Difficulty: Medium
The atmosphere was relaxed. The interviewer made it clear upfront that he wasn't interested in obscure algorithms — the goal was to evaluate how I think under pressure and approach problem-solving.
DSA Questions
1. House Robber (LeetCode Medium)
Maximize money robbed from houses without robbing adjacent ones. I walked through the recursive brute-force, then optimized progressively:
- Recursive (brute force)
- Memoization (top-down DP)
- Tabulation (bottom-up DP)
- Space-optimized DP (two variables)
The interviewer was especially interested in my state transition reasoning rather than just the final solution.
2. House Robber II (LeetCode Medium)
Same problem but houses arranged in a circle — first and last can't both be robbed. I split it into two linear House Robber subproblems (indices 0 to n-2 and 1 to n-1) and took the maximum. The interviewer was satisfied and asked follow-up questions on edge cases and optimization.
Database Discussion
After coding, the conversation shifted to fundamentals:
- SQL vs NoSQL — differences and when to choose each
- Redis internals — how it works under the hood
- Risks of using Redis as the only database
- Durability and persistence challenges with Redis
This became fairly conversational and we shared experiences from our respective companies. Overall one of the most comfortable DSA rounds I've attended.
Round 2 — System Design + Problem Solving
Interviewer: SDE-III (7 years experience) | Duration: 75 minutes | Difficulty: Medium–Hard
This round was supposed to be pure system design but started with a DSA problem. The interviewer was very supportive and encouraged me to slow down whenever I seemed rushed.
DSA Question — Array Merge Validity
Given two arrays of unique numbers (e.g. arr1 = [2,3,5,1], arr2 = [4,3,5,1,9]), determine whether there exists an array arr3 such that both are subsequences of it and all elements remain unique.
The key insight: model ordering constraints as a directed graph and check whether a valid topological ordering exists (i.e., no cycle). My approach:
- Build a directed graph from both arrays
- Compute indegree of each node
- Run Kahn's Algorithm (BFS-based topological sort)
- If all nodes are visited → valid; otherwise a cycle exists → impossible
The interviewer was more interested in how I modeled the problem than the final implementation.
System Design — Ticket Booking System (BookMyShow)
Rather than a full end-to-end design, the interviewer focused on specific tradeoffs.
Scenario 1: High-Traffic Events
How to handle millions of simultaneous booking attempts?
- Virtual waiting rooms
- Rate limiting
- Queue-based admission
- CDN caching, read replicas, event partitioning
Scenario 2: Seat Locking Problem
Two users try to book the same seat simultaneously — how does the system handle it?
- Pessimistic locking: lock seat immediately, strong consistency, reduced concurrency
- Optimistic locking: version-based conflict detection, better scalability, retry on conflict
- Temporary seat locks with lock expiration
- Role of Redis in the reservation workflow
This was my favorite round. It felt like a collaborative design discussion rather than an interrogation, and focused on engineering judgment over textbook answers.
Round 3 — Culture Fit
Interviewer: Tech Lead (13 years experience) | Duration: 30 minutes | Difficulty: Moderate
Very different from the previous rounds. The interviewer focused on business-oriented scenarios rather than technical implementation.
Topics discussed:
- Product thinking and business tradeoffs
- Problem-solving approach in high-growth environments
- Team collaboration
- Relocation to Gurgaon, team preferences, interest in different engineering domains, and long-term career goals
The interviewer frequently switched contexts, making it feel like a rapid brainstorming session. The round ended abruptly due to time constraints and I was unsure how I'd performed.
Outcome
The recruiter called me the very next day to say I had cleared all rounds. The offer letter followed shortly after.
Compensation:
- Fixed Salary: ₹25 LPA
- Joining Bonus (one-time): ₹5 LPA
- Total CTC (Year 1): ₹30 LPA
The entire process was completed in approximately 10 days — one of the fastest hiring experiences I've had.
Key Takeaways
Focus less on hard competitive programming and more on:
- Dynamic Programming fundamentals (medium level)
- Database concepts — SQL, NoSQL, Redis
- Concurrency and locking mechanisms
- Practical system design and real-world tradeoffs
- Clear articulation of your thought process — interviewers value reasoning over memorized solutions