Interview experience
Zerodha interview experiences covering Resume Screening, Online Assessment, Technical Interview(s), HR/Managerial. Round-wise notes, common questions, and what candidates report clears each stage.
Explore: Interview experience · HR interview questions · Overview · Placement papers · Preparation guide
Zerodha runs a shorter process than most large tech companies, but its real filter is the tiny, ultra-selective engineering team behind it - one of India’s leanest at its scale - which makes cultural and philosophical fit as decisive as the technical rounds.
Interview experience
Zerodha interview experiences covering Resume Screening, Online Assessment, Technical Interview(s), HR/Managerial. Round-wise notes, common questions, and what candidates report clears each stage.
HR interview questions
Zerodha HR interview questions with sample answer frameworks - motivation, relocation, STAR stories, and culture-fit prompts.
| Round | Duration | What they test |
|---|---|---|
| Resume Screening | - | Relevant projects, fit for a lean team |
| Online Assessment | 60-90 min | Aptitude + DSA coding |
| Technical Interview(s) | 45-60 min each | SQL, case studies, problem-solving reasoning |
| HR/Managerial | 30 min | Motivation, fit with a bootstrapped culture |
Zerodha does not run a standard yearly campus OA, so these answers cover the whole first stage. They are compiled from public candidate reports, the CTO’s public statements and prep guides, not from an official notice. The instructions in your own invite are the final word.
| Question | Answer |
|---|---|
| Is there an online assessment? | Not a fixed one. Many software-engineer loops send a take-home or live machine-coding brief (90-120 minutes of build time), sometimes with a HackerRank DSA screen. Where a written test is used, GfG’s recruitment guide (updated July 2024) lists logical reasoning, verbal, quantitative aptitude and a coding section, commonly on HackerRank. |
| How many questions and how long? | Not published. Reported take-home briefs give 90-120 minutes of build time; no public source gives a question count for the written test. |
| Does it have negative marking? | Not published. No candidate report we found describes a marked MCQ test with penalties. |
| How much is the cutoff? | No public CGPA cutoff. GfG’s guide (updated July 2024) gives at least 60% in your last degree and, for entry-level roles, graduation within the last 2-3 years. The real filter is the assignment and the interviews. |
| Does Zerodha hire from campus? | Rarely. It does not run seasonal bulk campus drives; openings are few and posted on Zerodha’s careers site. |
| Is there coding? | Yes - usually as a working build (order handling, rate limiting, or ingest and search) with a README and tests, which you then defend in an interview. Go, Python and JavaScript are the main stacks. |
| Is there a group discussion? | Sometimes, by GfG’s guide, for some roles. Engineering candidate reports rarely mention one. |
| How many engineers does Zerodha hire? | Very few. Zerodha’s tech blog put the whole tech team at 30 in April 2020. A September 2026 Multibagg report, based on social-media posts rather than an official statement, gives about 35 and attributes to CTO Kailash Nadh a line that only five tech staff were added over four years. |
These themes come from candidate reports summarised on this page and GfG’s Zerodha recruitment guide. They show the level and style, not a fixed list.
| Role / round | Reported questions and topics |
|---|---|
| Software engineer - technical | Write and optimise SQL against a given schema (each user’s latest trade, top gainers from daily prices), debug slow or broken code and explain your reasoning, keep the k largest prices from a stream, design an order book and holdings schema, idempotent order placement. |
| Software engineer - assignment review | Walk through your take-home: design choices, trade-offs, what you would change, how you tested it. |
| Written test (where used) | Kadane’s algorithm, detect and remove a linked-list cycle, check a valid BST, 0/1 knapsack and LIS, Dijkstra on a weighted graph (topics listed in GfG’s guide). |
| Culture / managerial | Why Zerodha over a VC-funded startup, how you work without a big support structure, a call you made with high ownership and little oversight, and what you know about Zerodha’s bootstrapped model. |
Asked across every role: a trading or fintech case study reasoned out loud, and evidence of real interest in markets or open-source work beyond coursework.
Zerodha’s screening stage looks past CGPA and pedigree toward demonstrated interest in fintech and markets - side projects, open-source contributions, or coding-bootcamp work tend to stand out more than a generic resume, since the hiring team is small and reviews applications closely rather than running a bulk campus filter.
Common questions
Many software-engineer loops skip a generic campus OA and instead send a take-home or live machine-coding brief (90–120 minutes of build time, sometimes plus a HackerRank DSA screen). Expect to implement a working feature - order handling, rate limiting, or ingest+search - with README, tests or smoke checks, and defensible trade-offs in a follow-up interview.
Common questions
One or more 45-60 minute rounds mixing SQL, debugging, and case-study style problems relevant to trading and fintech products. Interviewers consistently probe how you reason through a problem out loud, not just whether you land the “right” answer. Some roles add a take-home assignment before this stage.
Common questions
Round-by-round narratives are on the Zerodha interview experience page.
A closing 30-minute conversation that doubles as Zerodha’s cultural-fit check - candidates consistently describe this as a genuine filter, not a formality, given how small and tight-knit the team is.
Common questions
Sample answer frameworks for each of these are on the Zerodha HR interview questions page.
Zerodha is a genuine outlier among Indian tech employers: its tech blog put the whole tech team at 30 people in April 2020, and a September 2026 report (citing social-media posts, not an official statement) gives about 35, with only five tech hires over four years attributed to CTO Kailash Nadh and very low attrition. The stated philosophy is that a small, senior, deeply-aligned team can build and operate large-scale systems without needing to scale headcount the way most funded startups do. Practically, this means Zerodha isn’t running seasonal bulk campus drives - openings are rare, hiring is slow and selective, and the interview process weighs whether you’d genuinely “gel” with a small existing team as heavily as it weighs your DSA and SQL skills. If you’re used to large-company hiring funnels, expect a noticeably more personal, higher-scrutiny process for far fewer seats.
Zerodha and Groww are both large Indian broking apps, and candidates often apply to both, but they hire very differently.
Zerodha is bootstrapped with a deliberately tiny tech team, so openings are rare, there are no bulk campus drives, and a take-home build plus culture fit carries most of the weight. Groww is VC-funded with a much larger engineering team; it runs campus OAs (1 medium and 1 hard DSA problem plus CS MCQs), machine-coding and system-design rounds, and hires freshers every year.
This page covers Zerodha. If you want a predictable campus funnel, see the Groww hub.
Use a window function: SELECT user_id, trade_id, symbol, traded_at FROM (SELECT t.*, ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY traded_at DESC) AS rn FROM trades t) x WHERE rn = 1;. ROW_NUMBER partitions the rows per user and numbers them newest first, so filtering to rn = 1 gives exactly one row per user. The older correlated-subquery form joins trades against a grouped MAX(traded_at) per user, but that returns two rows if a user has two trades at the same timestamp, whereas ROW_NUMBER breaks the tie deterministically. Make sure there is an index on (user_id, traded_at) or the window function forces a full sort of the table.
Self-join today’s close against yesterday’s, or use LAG, which is cleaner: SELECT symbol, trade_date, close_price, LAG(close_price) OVER (PARTITION BY symbol ORDER BY trade_date) AS prev_close FROM prices;, then wrap it and compute (close_price - prev_close) / prev_close * 100, ordering descending and limiting. The pitfalls Zerodha interviewers look for are integer division truncating the percentage (cast to a decimal type), dividing by a zero or NULL previous close, and correctly skipping non-trading days, since LAG uses the previous existing row rather than the previous calendar day. Storing money as DECIMAL rather than FLOAT matters here too, since binary floating point cannot represent decimal fractions exactly.
Start with EXPLAIN or EXPLAIN ANALYZE to see the actual plan and row estimates - the usual cause is the optimiser switching from an index scan to a sequential scan because statistics went stale after a bulk load, fixed by running ANALYZE. Next check whether the predicate is sargable: wrapping the indexed column in a function or an implicit type cast disables the index. Then look at whether the data volume itself crossed a threshold, at lock waits from a concurrent long transaction, and at whether an index was recently dropped. Reproduce with the same parameters, because a plan cached for one parameter value can be terrible for another - the classic parameter-sniffing problem.
Keep a min-heap of size k. Push each incoming price, and whenever the heap size exceeds k, pop the smallest - so the heap always holds the k largest seen so far, with the k-th largest sitting at the root for O(1) access. Each element costs O(log k), so processing n elements is O(n log k) time with O(k) space, which is what makes it viable on an unbounded stream where you cannot store or sort everything. Sorting the whole input would be O(n log n) and needs all the data up front. Use the mirror max-heap if you want the k smallest.
Keep three core tables: orders(order_id PK, user_id, symbol, side, quantity, limit_price, status, placed_at), trades(trade_id PK, order_id FK, filled_quantity, fill_price, executed_at) since one order can fill in several partial trades, and holdings(user_id, symbol, quantity, average_price) with a composite primary key. Store all money as DECIMAL, never FLOAT, so rounding does not accumulate. Holdings are strictly derived from trades, so treat trades as the append-only source of truth and update holdings inside the same transaction as the trade insert, or recompute them from the trade log. Index orders on (user_id, placed_at) for the order-history screen and on (symbol, status) for matching queries.
IEEE 754 binary floating point cannot represent most decimal fractions exactly - 0.1 plus 0.2 evaluates to 0.30000000000000004 - so repeated addition of prices and fees accumulates drift, and equality comparisons on balances become unreliable. In a trading or brokerage system that drift becomes real money and fails reconciliation. The correct choices are a fixed-point DECIMAL or NUMERIC column with an explicit precision and scale, or storing integer paise and formatting at the display layer. In Java that means BigDecimal constructed from a string rather than a double, and in Python the decimal module rather than the built-in float.
State your assumptions out loud first - the volume of users, the read-versus-write ratio, and what correctness guarantee the feature actually needs - because interviewers here are explicitly grading reasoning rather than a memorised answer. Then narrow the problem to its hardest constraint: for a trading feature that is usually latency during market open and correctness of money movement, not raw storage. Propose the simplest design that satisfies it, name the specific failure mode you are worried about, and only then add complexity to address that failure. Saying what you would deliberately not build, and why, tends to land better at a company that runs a lean team and prizes low overhead.
An idempotent operation produces the same result whether it is applied once or many times. It matters because a client that times out cannot tell whether the order reached the server, so a naive retry can place a duplicate order and move real money twice. The standard fix is an idempotency key: the client generates a unique request ID, the server stores it with the resulting order in a table with a unique constraint, and a repeat of the same key returns the original stored result instead of creating a new order. Note that GET, PUT, and DELETE are idempotent by HTTP semantics while POST is not, which is exactly why order-placement endpoints need the key made explicit.
Not a fixed annual one. Zerodha does not run bulk campus drives; many software-engineer loops instead send a take-home or live machine-coding brief (90-120 minutes of build time), sometimes with a HackerRank DSA screen, and the follow-up interview grills your design choices.
No public CGPA cutoff. GfG’s recruitment guide gives at least 60% in your last degree and graduation within the last 2-3 years for entry-level roles, but the real filter is the assignment, the technical interviews and the culture round.
Zerodha’s process typically has 3-5 stages: 1. Resume/profile screening. 2. Online Assessment (60-90 minutes) covering logical reasoning, quantitative aptitude, and a coding round on data structures and algorithms. 3. One or more Technical Interviews (45-60 minutes each), often including SQL and case-study style problem solving. 4. HR/Managerial round (30 minutes) on fit and motivation. Some roles insert a take-home assignment between the OA and the technical rounds.
Zerodha interviews cover DSA and debugging problems, SQL queries, case studies relevant to trading/fintech products, and questions about your reasoning process rather than rote answers. Behavioural questions probe why you want to work at a small, bootstrapped, profitable company instead of a large funded startup, and how you’d operate with a lean team and high autonomy.
Usually 3-5 rounds, depending on the role: resume screening, an online assessment, one or two technical interviews (sometimes with a take-home assignment), and a final HR/managerial round. Compared to large tech companies the process is shorter, but candidates report it is still rigorous.
Practise DSA and SQL fundamentals, be ready to reason through case studies out loud, and read up on Zerodha’s bootstrapped, no-external-funding business model since interviewers often probe whether you understand and want that kind of low-overhead, product-first culture.
Because it deliberately keeps one of India’s leanest engineering teams for its scale - Zerodha’s tech blog put the team at 30 people in April 2020, and a 2026 report citing social-media posts gives about 35, with very low attrition. The company believes a small, senior, deeply-trusted team can build and run large-scale systems without needing to scale headcount, so every opening is filled slowly and selectively rather than through bulk campus hiring.
Cultural and philosophical fit weighs heavily - Zerodha’s CTO has described wanting people who “gel well” with the existing team and share its low-overhead, ownership-driven philosophy, not just people who clear a DSA bar. Demonstrated passion for fintech and markets (side projects, open-source work, genuine curiosity about trading systems) tends to matter more here than at larger, process-driven companies.
Good fit: You like building small tools end-to-end, you can sit with a blank editor and finish a service without a framework zoo, and you are genuinely curious how Kite stays fast when the market opens. Comfortable relocating to Bengaluru. You have at least one project you would be embarrassed to over-explain with buzzwords.
Harder path: You only grind LeetCode hard and skip READMEs; you freeze without Copilot; you think “fintech” means copying a stock-chart tutorial; you refuse Bengaluru; you want a 2,000-person campus drive with a published paper every August.
Use this as a default four-week loop before a Zerodha drive. Adjust to your invite timeline.
10-day crash version: Days 1-4 timed DSA, days 5-7 resume projects + CS fundamentals, days 8-9 mock interviews out loud, day 10 HR STAR stories on the HR page.
Candidate-reported fresher/early-career packages for Zerodha often cite ₹12-25 LPA. Treat forum numbers as ranges, not guarantees - confirm the written offer letter for your team and location.
Interview process details and sample questions on this site are editorially organized from public candidate reports and hiring write-ups, with round structure, prep notes, and company-specific framing added by our team. For round-by-round stories, see the Zerodha interview experience page. For OA papers and coding drills, use Zerodha on placementpapers.app. Hiring quick answers and role-wise questions draw on GfG’s Zerodha recruitment process guide (updated July 2024), the candidate reports summarised above, the “hello world” post on Zerodha’s tech blog (April 2020) on team size, and a September 2026 Multibagg report on the tech team’s headcount.