Flipkart · Business Analyst
Bengaluru · May 2024 · 23 views
✓ Offer acceptedTotal process: 71 days
3 rounds: →→
This experience is over 18 months old. Interview processes change — use it for general patterns, not specifics.
I had 14 months of experience as a Data Scientist at a Big Tech / Manufacturing company when I applied. I hold a diploma in Data Analytics from an AA-rated institute and applied for a Business Analyst role at Flipkart's Central Analytics team, Grade 8, based in Bengaluru.
I got the interview through a referral from a friend. I think my diploma and solid projects — where I solved real problems using data — helped me get shortlisted. There was no back-and-forth with the recruiter before the process started. I applied on 22 April 2024 and heard back on 4 May — a 12-day turnaround. I did about a week of preparation before each round.
| When | Stage |
|---|---|
| 22 Apr 2024 | Applied |
| 4 May 2024 (after 12 days) | Heard back from recruiter |
| — | Round 1 — Data Handling · Video · ~1 hr 10 min · Cleared |
| After ~1 week | Round 2 — Problem Solving · Video · ~1 hr · Cleared |
| After ~1 week | Round 3 — Hiring Manager · Video · ~1 hr · Cleared |
| 2 Jul 2024 | Offer received · 30+ LPA · ESOPs + joining bonus |
Format: Video | Duration: ~1 hr 10 min | Interviewer: Senior Business Analyst
I started by thinking about universal tables — orders, payments, employees — then added domain-specific ones like food menu and food ratings. For dimensions vs. facts, I reasoned that constant information belonged in one type and transactional in another. I gave each table a unique primary key (order_id, customer_id, address_id, rider_id, cafe_id), added relevant attribute columns, and made the orders table the base/fact table linking everything.
Self-note: I classified customer/employee info as facts and orders/payments as dimensions — conventionally it's the reverse. Orders/payments are facts; customer/employee are dimensions. Worth flagging for future prep.
Solved with GROUP BY, ORDER BY, RANK/LIMIT, and aggregations.
Solved with GROUP BY, ORDER BY, RANK/LIMIT, and aggregations.
I took a small hint to understand the problem, then solved it with window functions.
Where I got stuck: This was the blocker. I tried a simple query, then a CTE with the CORR function, but couldn't structure it properly. The interviewer eventually shared the solution — I struggled to pick the right functions and organise the query logic. They were supportive throughout.
I solved both easily — I'm a regular Excel user.
Verdict: Cleared
Format: Video | Duration: ~1 hr | Interviewer: Lead Business Analyst
I structured this top-down: split the 24-hour day into three 8-hour buckets by traffic volume; assumed ~2 minutes per vehicle to pass; estimated vehicles processed per bucket; split traffic into private vs. commercial and applied the relevant toll rate to each across the three time zones; then summed it all up.
Where I got stuck: I initially didn't recognise this as an optimization problem and started solving it manually. The interviewer flagged the constraints, after which I worked through it in an Excel table — testing different load/trip splits (e.g., 1,000 × 3 trips; 1,500/1,000/500) — and converged on 560. The actual answer is 533. The interviewer was impressed with the structured approach despite the off answer.
A problem was asked here; the exact details aren't in my notes.
Where I got stuck: I struggled greatly with this section — I didn't have the fundamentals solid enough to approach these confidently.
Verdict: Cleared
Format: Video | Duration: ~1 hr | Interviewer: Senior Manager, Analytics
I walked through each project briefly, then did a deep-dive into my classification project: a class-imbalanced model predicting customer churn, used to prevent churn via marketing tools and offers. The interviewer probed the use case of each input variable — weather, natural calamities, distance from home, etc. I walked through every variable in full and felt confident here.
I handled these confidently and on my toes.
My first approach: pull every item listed on both platforms, flag each as expensive, equal, or cheaper, and compute the share of items priced higher on Flipkart. I felt in control. Then the interviewer added a revenue angle — and I went blank. The interviewer was supportive and hinted toward "average," which eventually unlocked the weighted-average solution. The interview ended there.
Where I got stuck: When the conversation shifted from pure price comparison to a revenue perspective, I froze — fully speechless until the hint. The harder I gripped, the emptier my mind went.
Verdict: Cleared
I was offered the role on 2 July 2024 — 71 days after applying — with a 30+ LPA CTC, ESOPs, and a joining bonus. HR reached out within 3–4 days after each round, roughly a week apart between interviews, and there was a brief package discussion with some light negotiation.
I'd spend significantly more time strengthening my fundamentals in statistics, probability, and permutations & combinations — I felt underprepared for the probability-heavy questions in Round 2 — and I'd practise more complex SQL problems beforehand. In hindsight, the bar was somewhere between medium and hard, harder than I'd initially prepared for, especially on the math and probability side.