The loop at a glance
Five rounds, one bar underneath all of them: can you build something that runs, and can you explain why. Everything below is how to clear each one.
- Online assessment. 2 to 3 medium DSA problems under a clock. The goal is not to pass, it is to finish early with every case green. This is a real filter, not a formality.
- DSA round. Live coding on medium-to-hard problems. They grade how you think, so talk through a clean brute force and improve it out loud rather than jumping to a half-remembered trick.
- Machine coding / LLD. Build a small but complete program in 60 to 90 minutes. Working and extensible beats pretty and broken. This is the round people under-prepare and the one that decides the most offers.
- System design (SDE-2 and up). Ola-flavored prompts: cab dispatch, surge pricing, driver-location tracking, wallet. These are systems Ola actually runs, so interviewers have strong opinions and push on the real hard parts.
- Hiring manager / bar-raiser. Ownership, past projects, culture fit. They want to hear "I decided," not "we discussed." Bring STAR stories where you made the call.
1Snapshot, read this first#
| Item | What to expect at Ola |
|---|---|
| Roles | SDE / SDE-1, SDE-2, SDE-3, and senior/staff for backend, mobile (Android/iOS), full-stack, and data/platform |
| Levels | New grad (SDE-1) through senior IC; Ola Electric and Ola Cabs/fintech hire separately but share a similar bar |
| Process length | Typically 2-4 weeks from first call to decision; can compress to a few days for urgent backfills |
| Rounds | Online coding test (off-campus) or campus test, then 2-3 technical rounds (DSA + machine coding / LLD), 1 system design (SDE-2+), and 1 hiring-manager / bar-raiser + culture round |
| What wins | Fast, correct DSA; clean, modular machine-coding; clear communication; ownership mindset; comfort with ambiguity |
| What fails | Buggy or uncompilable code; silent problem-solving; over-engineering; weak fundamentals (OS/DBMS/CN); no questions for the interviewer |
| India comp (SDE-1) | ~₹18-30 LPA total; strong for new grads |
| India comp (SDE-2) | ~₹30-50 LPA total; senior/staff can go well higher with stock |
| US comp | Ola is India-based; no standard US SDE track, so treat comp as INR |
The one mental image to carry through the whole loop:
- Interviewers weight practical engineering (can you build a working, well-structured feature quickly and defend your choices) at least as heavily as textbook algorithm trivia.
- In concrete terms: a candidate who ships a running, extensible parking-lot service in 70 minutes beats a candidate who drew a beautiful class diagram and wrote 30 lines that don't compile.
- Keep that picture in your head. Every round rewards the same instinct: make it run, then make it good.
Ola is checking whether you can own a feature end to end and ship it under pressure. Clean working code, numbers in your reasoning, and "I decided" in your stories all point at the same signal. Hit that and the loop gets easy.
2Getting the call (the part most guides skip)#
Ola sources candidates through three channels. Match your strategy to the one you are in.
Referrals, the highest-conversion path.
- A referral from a current Ola engineer puts your resume in front of a recruiter directly and often skips the generic resume-screen queue.
- Find Ola engineers in your extended network on LinkedIn and send a short, specific note. Example: "I'm an SDE-2 with 4 years in backend payments, saw the Ola Electric platform role, would you be open to referring me?"
- Attach a one-page resume. If you have no prior relationship, ask for a 10-minute call first, not a cold favor.
- The note that works: name the exact team or req ID, name one thing you shipped with a number in it, and make the ask tiny. People refer when it costs them two minutes and makes them look good internally.
Campus and off-campus.
- Ola hires heavily from engineering campuses for SDE-1. If you are a student, the on-campus coding test is your front door, so prepare DSA hard before placement season.
- Off-campus, Ola posts on its careers page and LinkedIn; applying there usually routes you into an online assessment on a platform like HackerRank or Codersignal.
- The campus cut-off is brutal: a test with 2 to 3 mediums often screens hundreds of students down to a handful. Your goal is not to pass, it is to finish early with all cases green.
Resume rules.
- Keep it to one page for under 8 years of experience.
- Lead every bullet with impact, not responsibility. A weak bullet says "Worked on the payments service." A strong one carries the language, the metric moved, the bug class killed, and the money:
Rebuilt the refund pipeline in Go, cutting p99 latency from 1.8s to 320ms and eliminating a class of double-refund bugs that had cost ~₹12L/month.
- Three of your bullets should look like that (language, metric, bug killed, money). The rest can be plainer, but no bullet starts with "Responsible for" or "Worked on."
ATS keywords.
- Mirror the job description. Backend roles usually mean: Java/Go/Kotlin, microservices, Kafka, Redis, MySQL/Postgres, AWS, REST/gRPC, distributed systems, high throughput, low latency.
- Mobile roles mean: Kotlin, Jetpack Compose, Swift, MVVM, offline-first.
- Put these inside bullets, in context, not as a keyword dump. A recruiter skims for 7 to 10 seconds and a filter scans for exact strings, so the words have to be both present and earned by a real line of work.
How people actually get shortlisted:
- A clean resume with 2 to 3 quantified, system-level bullets, plus a referral or a strong OA score.
- Treat the OA as a round, not a formality. Solve 2 of 3 fully and partial the third with clean code, and you are almost always through.
3The loop at a glance#
| Round | Length | What it tests |
|---|---|---|
| Online assessment (OA) | 60-90 min | 2-3 DSA problems (medium), sometimes MCQs on CS fundamentals |
| Technical 1, DSA | 45-60 min | Data structures & algorithms, live coding, complexity analysis |
| Technical 2, Machine coding / LLD | 60-90 min | Build a small working program or design classes for a feature |
| System design (SDE-2+) | 45-60 min | High-level design, scaling, trade-offs, data modeling |
| Hiring manager / bar-raiser | 45-60 min | Deeper tech + ownership, past projects, culture fit |
How the loop flexes by level:
- Not every candidate sees every round.
- SDE-1 may skip dedicated system design.
- Senior candidates may get two design-flavored rounds.
- The machine-coding / LLD round is the one people under-prepare, and it is very common at Indian consumer-tech companies like Ola.
4The coding / technical rounds, patterns, not problems#
Ola's DSA questions sit mostly in the medium-to-hard band on LeetCode. You won't be asked obscure research algorithms; you'll be asked standard competitive patterns, applied cleanly under time.
The reusable patterns to drill:
- Arrays & two pointers / sliding window: subarray sums, longest-substring-with-constraint, merge intervals.
- Hashing: frequency maps, grouping, two-sum family, subarray-with-given-sum.
- Trees & graphs: BFS/DFS, level order, lowest common ancestor, topological sort, shortest path (Dijkstra/BFS), number-of-islands style grid problems.
- Dynamic programming: knapsack variants, longest common subsequence, edit distance, DP on grids, DP on strings. Expect at least one DP question for SDE-2.
- Heaps / priority queues: top-k, merge-k-sorted-lists, scheduling.
- Stacks & queues: next-greater-element, valid-parentheses, monotonic stack.
- Binary search: on answer space (minimize max / allocate books / ship within D days) is a favorite.
- Recursion & backtracking: permutations, combinations, subsets, N-queens style.
Difficulty, round by round.
- OA is medium.
- Live rounds often have one medium you must nail and one harder problem where partial, well-reasoned progress still scores.
- The interviewer is reading how you think, not just whether you land the optimal answer.
- A clean brute force you then improve to O(n log n) out loud beats a jump straight to a half-remembered trick you can't justify.
How to practice (the part people skip matters most).
- Do problems by pattern, not randomly. Pick 8 to 10 problems per pattern and solve until the approach is reflexive.
- Always re-implement from scratch the next day. Time yourself, 25 to 30 minutes per medium.
- The re-solve is what sticks. If you can't rebuild yesterday's solution from a blank editor, you didn't learn it, you recognized it.
How to win the round (worth more than one extra algorithm):
- Clarify first. Restate the problem, confirm input ranges, edge cases, and whether input is sorted. Ask about duplicates, empty input, and expected output format. Thirty seconds of clarifying can save you from solving the wrong problem for twenty minutes.
- Communicate the approach before coding. State your plan and its complexity. Let the interviewer redirect you before you've written 40 lines.
- Code cleanly. Good names, small functions, no dead code. Interviewers read your code as a proxy for your PRs. If they wouldn't approve this diff at work, they won't pass you here.
- State complexity. Give time and space for your solution, and mention whether it's optimal and what the bottleneck is.
- Test it yourself. Walk a small example through your code line by line, then an edge case (empty, single element, max size). Catching your own bug beats the interviewer catching it, every time.
I am grading your reasoning, and silence gives me nothing to grade. Talked-through near-correct code scores better than silent correct code, because the second one tells me nothing about how you got there. Narrate the whole time, even when you are stuck, especially when you are stuck.
5System design & machine coding, the rounds that decide senior offers#
Ola runs two design-flavored rounds depending on level. Know both.
Machine coding / LLD (all levels, critical for SDE-1/2)#
You'll be asked to build a small but complete program in 60 to 90 minutes: an in-memory ride-matching service, a parking lot, a rate limiter, a splitwise-style expense tracker, a cab-booking state machine, or a food-ordering cart.
What they grade:
- Working code: it must compile and run against basic cases. This is the single biggest filter in the whole round.
- Clean OOP / modularity: sensible classes, separation of concerns, no god-class. One class holding all the logic is an instant mark-down.
- Extensibility: can you add a new payment method or vehicle type without rewriting everything? Use interfaces and the right patterns (Strategy, Factory, Observer) where they genuinely help. The interviewer will often ask "now add bikes" or "now add UPI" live, so design for that moment.
- Correctness of core logic: edge cases handled, no obvious race in concurrent variants.
A framework that keeps you running:
- Identify the entities, define interfaces, implement the happy path first, then layer in edge cases, then refactor for extension.
- Keep it compiling and running at every step.
- The failure mode I see most: building the whole thing silently and compiling once at minute 80, finding it broken, and panicking.
- Instead, get a tiny vertical slice running at minute 20, then grow it. A booking that works for one car beats a cathedral that compiles never.
Reveal the answer
System design (SDE-2 and above)#
Classic Ola-flavored prompts:
- Design a ride-hailing / cab-dispatch system.
- Design a surge-pricing service.
- Design a real-time driver-location tracking system.
- Design a payment/wallet service.
- Design a notification system.
- Design a rate limiter at scale.
These are not random. They are the systems Ola actually runs, so interviewers have strong opinions and will push on the real hard parts.
Use this framework:
- Requirements: functional (match riders to drivers, show ETA) and non-functional (latency, QPS, availability, consistency needs). Pin numbers early. "Driver location updates every 4 seconds, 1M active drivers" changes the whole design.
- Estimate scale: users, requests/sec, storage, read/write ratio. Do the back-of-envelope out loud so they see you reason, not just quote.
- API design: the key endpoints and their contracts.
- Data model: schemas, and SQL-vs-NoSQL justification (geospatial data often wants a specialized store).
- High-level architecture: services, queues (Kafka), caches (Redis), databases, load balancers.
- Deep dive: pick the hard part (geospatial indexing with quadtrees/geohashes for driver matching, or consistency for wallet balances) and go deep. For a wallet, this is where you talk ledger-based double-entry, idempotency keys, and exactly-once debits, not just "a MySQL table."
- Trade-offs & bottlenecks: sharding, replication, what breaks at 10x, how you'd handle it.
For freshers / SDE-1 where design is lighter, lock your CS fundamentals:
- OS: processes/threads, deadlock, scheduling, paging.
- DBMS: normalization, indexing, transactions, ACID, isolation levels.
- CN: TCP vs UDP, HTTP, DNS, TLS handshake.
- OOP: four pillars, SOLID.
- These show up as quick-fire questions in the technical and HM rounds, often a two-minute "explain how an index speeds up this query" or "what's the difference between a process and a thread." Crisp, confident answers here cover for a rough DSA moment elsewhere.
Reaching for microservices, Kafka, and five caches on a design that needed one service and a Redis instance reads as poor judgment, not seniority. Scale the design to the numbers you pinned in step 1. If 1M drivers and 4-second pings don't demand a component, don't draw it. The strongest candidates add complexity only when a number forces it.
6Behavioral & culture fit#
What Ola's engineering culture prizes:
- Ownership, speed, frugality, customer obsession, and comfort with ambiguity: the classic high-growth Indian-startup values.
- Interviewers probe whether you take end-to-end responsibility, move fast without waiting to be told, and make pragmatic calls with incomplete information.
Expect questions like:
- Tell me about a time you owned a project end to end.
- A time you shipped under a tight deadline.
- A time you disagreed with a teammate.
- A time you failed and what you learned.
How to prepare:
- Write 5 to 6 STAR stories in advance (Situation, Task, Action, Result), each with a measurable result. Reuse them across questions.
- Pick stories where you made the call under pressure, not where the team quietly agreed. "Ownership" at Ola means they want to hear "I decided," not "we discussed."
One full worked STAR example:
- Situation: Our checkout service was timing out during evening peak, and ~4% of payment attempts were failing silently, hurting conversion.
- Task: I owned reliability for checkout and had to cut the failure rate without adding a new vendor or budget.
- Action: I traced the failures to a synchronous call to a slow fraud-check service blocking the payment thread. I made the fraud check asynchronous with a fallback score, added a Redis circuit breaker, and introduced idempotency keys so retries couldn't double-charge. I shipped it behind a feature flag and ramped over three days while watching dashboards.
- Result: Peak payment failure rate dropped from 4% to 0.3%, recovering roughly ₹20L/month in otherwise-lost transactions, with no increase in fraud losses.
Why that structure lands:
- Concrete problem, your specific actions, a number at the end. That is what separates a strong behavioral round from a vague one.
- The Action section carries the real signal: it names the root cause, the three specific fixes, and the safe rollout. That is what "ownership" sounds like out loud.
7Your prep plan#
4-week plan
- Week 1: Revise DSA fundamentals, arrays, strings, hashing, two pointers, stacks/queues. 3 to 4 problems/day.
- Week 2: Trees, graphs, heaps, binary search. Start one machine-coding problem end to end.
- Week 3: Dynamic programming + recursion/backtracking. Two full machine-coding builds (parking lot, rate limiter). Revise OS/DBMS/CN/OOP.
- Week 4: System design (ride-hailing, wallet, notifications). Mock interviews. Write your STAR stories. Re-solve your weakest patterns.
2-week plan
- Days 1-4: Highest-frequency patterns, sliding window, hashing, trees, graphs, DP. Timed.
- Days 5-8: One machine-coding build per day; drill SOLID and common design patterns.
- Days 9-11: System design framework + 3 classic prompts out loud.
- Days 12-14: Mocks, CS fundamentals quick-fire, STAR stories, rest before the loop.
2-day crash plan
- Day 1: Re-solve 15 to 20 medium problems across top patterns; one machine-coding build; skim system design framework.
- Day 2: One ride-hailing design out loud; review complexity cheat-sheet and CS fundamentals; prepare 4 STAR stories and 3 questions to ask interviewers; sleep well.
The one rule for every plan:
- Budget real time for machine coding, not just DSA.
- Most people over-invest in LeetCode and walk into Technical 2 having never built a complete program against a clock.
- Do at least one timed end-to-end build before the loop, no matter how short your runway.
8Why people get rejected at Ola#
- Unfinished or non-compiling machine-coding. A half-built class diagram with no running code almost always fails this round. Working beats elegant.
- Silent problem-solving. Getting the right answer without narrating leaves the interviewer unable to gauge your reasoning.
- Weak fundamentals. Fumbling on indexing, transactions, or threads signals shaky foundations even if your DSA is good.
- Over-engineering simple problems. Reaching for microservices and Kafka in a design that needed one service and a cache reads as poor judgment.
- No ownership in behavioral answers. "The team decided" instead of "I did" makes you sound like a passenger, not a driver.
- Not testing your own code. Submitting without dry-running an edge case; the interviewer finds the bug you should have caught.
Read this as a pre-flight checklist before each round. Five of the six are about habits, not knowledge, which means they are fully in your control on the day.
9The offer, comp & negotiation#
How an Ola SDE offer breaks down:
- Fixed base + joining/retention bonus + ESOPs/RSUs.
- SDE-1: expect roughly ₹18-30 LPA total.
- SDE-2: commonly lands ~₹30-50 LPA total.
- Senior and staff go higher, with a larger share in equity.
- Equity at a private company carries real upside and real uncertainty. Value it, but don't treat paper equity as cash. When you compare offers, split the number into guaranteed cash (base plus joining bonus) and the speculative part (ESOPs), and decide mostly on the guaranteed cash unless you have strong conviction on the equity.
Negotiation tips for Ola's context:
- Get a competing offer if you can. Nothing moves an Indian-startup offer like a credible second offer; Ola's recruiters have room to improve base and joining bonus when there's competition.
- Negotiate the whole package, not just base. If base is capped by band, push on joining bonus, ESOP count, and level. A bump from SDE-1 to SDE-2 is worth more than a few lakhs of base because it resets your whole future comp curve.
- Anchor with market data and your strongest signal. Come with specific numbers (your current comp, other offers, market ranges) and remind them of your standout round. Be polite, specific, and never bluff an offer you don't have; recruiters talk, and a bluff that gets called ends the conversation.
10FAQ#
Q: How hard is the Ola DSA bar? A: Solidly medium, with a harder problem to separate top candidates. If you can comfortably solve LeetCode mediums in 25 to 30 minutes and make progress on hards, you're in range.
Q: Which language should I use? A: Whatever you're fastest and cleanest in. Java, C++, Python, and Go are all fine. For machine coding, a language with clear OOP support (Java/C++/Kotlin) tends to show structure best.
Q: Is the machine-coding round really that important? A: Yes. At Indian consumer-tech companies it's often the deciding round. Practice building 3 to 4 small complete programs before your loop.
Q: Do I need system design as a fresher? A: Usually not a full design round, but expect CS-fundamentals and light design questions. For SDE-2+, system design is central.
Q: How long until I hear back? A: Often within a week or two of the final round, sometimes faster for urgent roles. A polite follow-up with your recruiter after 7 to 10 days is reasonable.
"You've got a working parking lot. Now add bikes and electric vehicles with charging spots."
"How do you find the nearest drivers for a rider at 1M active drivers updating every 4 seconds?"
"For a wallet, how do you guarantee a debit happens exactly once even if the client retries?"
"Your machine-coding solution works but it's one big class. Does it still pass?"
"I asked you to explain how an index speeds up a query and you froze. How much does that hurt?"
What you can now explain in the room
- Why machine coding is the deciding round at Ola, and how to keep a build running from minute 20 instead of compiling once at minute 80.
- How to design LLD seams (Strategy, interfaces) so a live "now add X" request costs two minutes, not a rewrite.
- How to drill DSA by pattern and win the round on narration and self-testing, not just the optimal answer.
- How to size an Ola-flavored system (cab dispatch, wallet) to its real numbers and go deep on the one hard part.
- Why "I decided" beats "we discussed," and how to build STAR stories that end on a number.
- How to read an Ola offer as guaranteed cash plus speculative equity, and where the real negotiation leverage sits.
Want this turned into a personalized, dated study plan built around your target interview date and your weak spots? Tell me your timeline and current level, and I'll map out exactly what to practice each day.
Get a prep plan built around your Ola interview
Tell us the role and your interview date. We will send back a dated, day by day plan. Free.