Build a ride-sharing fare estimator. The system should support multiple vehicle types (bike, auto, cab), surge pricing based on demand zones, and promotional discount codes. Expose a clean programmatic API. You have 90 minutes.
I started by designing the domain models on paper: VehicleType with base rates, Zone with surge multipliers, DiscountCode with validity and cap logic. Built a FareCalculator with a strategy pattern per vehicle type, a SurgeEngine that takes a zone ID and returns a multiplier, and a DiscountApplier as a post-processing step. Applied surge before discount since that's how real products work. Wrote four unit tests for the happy path and two edge cases (expired coupon, out-of-zone surge).
⚑ Where I got stuck
Got tangled deciding whether surge should apply before or after discounts. Spent about 5 minutes on this—the interviewer let me sit with it rather than hinting. I picked surge-first and explained the business rationale; he said both orderings are valid but appreciated that I had a reason. Ran short on time for error handling on invalid zone IDs.
I would prepare system design depth much more rigorously—specifically capacity estimation. I got through on intuition and hand-waving, but a structured approach to QPS, storage, and bandwidth would have made my design round noticeably stronger. I'd also start tracking my work's business impact in concrete numbers from day one so I can cite them confidently in behavioral rounds without fumbling.
Practice machine coding with a focus on clean interfaces and testability, not just working code. Flipkart interviewers look for separation of concerns—even writing two unit tests unprompted signals maturity. Correctness is table stakes; how you structure it is what gets you the offer.
The notification service topology and the fan-out problem come up very frequently for L3/SDE-2 at Flipkart Commerce. Prepare the Kafka-based async design cold until you can draw it in under 5 minutes, then spend the rest of your session on the hard parts the interviewer actually wants to discuss.
HM rounds here follow a loose STAR structure, but the real bar is the Result. Quantify your business impact wherever possible—even rough numbers with explicit uncertainty ('we reduced cart errors by roughly 60%, which at our GMV scale translated to significant monthly revenue') are far better than a vague 'it got better.'
Did the machine coding round require a specific language, or could you choose freely?
They explicitly said any language of your choice at the start. I used Java because I'm most comfortable with OOP-heavy problems in it. I've heard of others using Python and Go from folks in my referral network. The interviewer does run your code at the end so make sure it actually compiles—don't just write pseudo-code with a 'this would work' at the bottom.
This is the author's personal recollection and may not accurately represent the company's current interview process. HireLogs does not guarantee accuracy.