HomeBlog › JPMorgan Coding Interview Questions

JPMorgan Coding Interview Questions: Tracks, Loop & Prep

A universal bank hiring engineers at enormous scale across very different tracks - here is how the loop changes by track, what to study, and why explaining trade-offs clearly beats exotic algorithms.

The most common mistake candidates make preparing for JPMorgan Chase is treating "JPMorgan" as one interview. It is not. The firm employs tens of thousands of technologists across consumer banking, corporate and investment banking, asset and wealth management, payments, risk, and infrastructure, and those groups do not run a single shared loop. A consumer-app backend team, a regulatory-reporting platform team, and a markets technology desk are hiring for genuinely different jobs, and they interview accordingly.

That is also the good news. Unlike a small quantitative trading firm that filters on raw problem-solving intensity, a bank hiring at this volume needs engineers who ship and maintain long-lived systems. The bar candidates typically describe is fair and fundamentals-weighted. The candidates who struggle are usually the ones who prepared only for a puzzle round and could not say why they chose the design they chose.

This guide describes the tracks, the loop shape candidates commonly report, and the problem types to prepare - patterns rather than invented leaked prompts, because question sets rotate and pattern fluency is what transfers.

Know your track before you prepare

Figure out which of these you are actually interviewing for. It changes almost everything downstream.

TrackWho it is forWhere the weight sits
Experienced software engineeringEngineers joining a specific product, platform, or infrastructure teamCoding fundamentals, practical backend design, your actual past work
Software Engineer ProgramGraduates and early-career hires on a structured campus timelineDS&A fundamentals, an assessment stage, motivation and coachability
Quant and markets technologyRoles supporting trading, pricing, and riskStronger maths and probability, numerical care, sometimes latency awareness
Data, ML, and analyticsData platform, modelling, and analytics rolesSQL depth, data modelling, pipeline reasoning, statistics

The Software Engineer Program is the firm's early-career track, typically pairing structured training with rotations. Campus recruiting generally opens well ahead of the start date and candidates commonly describe an online assessment and a recorded or virtual interview stage before a final round. Dates and stages move year to year, so treat the live posting as the source of truth.

The one question to ask your recruiter: "Which line of business is this team in, and what do the interview stages cover?" Recruiters answer this readily, and the answer tells you whether to spend your remaining prep hours on graph algorithms, SQL, or probability. Processes change, so confirm rather than relying on any public description.

The loop, as candidates commonly describe it

Across tracks, reported loops tend to move through stages like these. Expect variation - the point is the shape, not a guaranteed schedule.

Senior candidates should expect the balance to tilt away from puzzle-style coding and toward architecture, ownership of past systems, and how they handle constraints - regulatory requirements, legacy integration, and long maintenance horizons are real parts of the job and fair game in the conversation.

Topic emphasis: where to spend prep hours

For structured algorithm coverage, our LeetCode patterns guide and the Blind 75 list comfortably span the reported range.

Representative problem types

Described as categories so you prepare the pattern rather than a single prompt:

Here is the level the coding rounds typically sit at - a grouping problem solved in one pass, the sort of thing you should be able to write while narrating.

from collections import defaultdict

def totals_by_account(records):
    """records: iterable of (account_id, amount_in_cents)
    Returns account_id -> total, computed in one pass."""
    totals = defaultdict(int)
    for account_id, amount in records:
        if amount is None:                  # malformed row: skip, do not crash
            continue
        totals[account_id] += amount        # integer cents, never floats
    return dict(totals)

The strong answer is not the code. It is the sentence after it: one pass, O(n) time and O(k) space for k distinct accounts; amounts kept as integer minor units so rounding never drifts; malformed rows skipped rather than crashing the batch, with a note that in production you would log or route them to a dead-letter path instead of silently dropping them. That is the difference between a candidate who solved it and a candidate the team wants to hire.

What interviewers actually score

A note on integrity: prepare thoroughly and reason honestly in the room. Experienced interviewers can tell genuine understanding from a recited answer, and the follow-up questions in a bank loop - about maintenance, failure, and why - are exactly where a recited answer comes apart.

How this differs from other finance interviews

If you are interviewing across the sector, calibrate: a quantitative proprietary trading firm filters hard on raw problem-solving and mathematical depth, a monoline card issuer runs a tightly standardised case-and-coding format, and a universal bank hiring across dozens of lines of business optimises for engineers who can build durable systems and work well with others. Preparing for one as though it were another is the fastest way to misallocate your hours. For contrast, see our guides to the Citadel loop, the Goldman Sachs process, and the Capital One Power Day.

A realistic two-week prep plan

  1. Days 1-2: Identify your track and line of business, ask the recruiter what the stages cover, and reread the job posting for the language and stack it names.
  2. Days 3-6: Core patterns from our LeetCode patterns post - arrays, strings, hash maps, two pointers, sliding window, sorting. Aim for fluency on easy-to-medium.
  3. Days 7-9: Trees, graphs (BFS/DFS and topological sort), heaps, intervals, and light dynamic programming, plus deep questions on your primary language.
  4. Days 10-11: SQL and data modelling, then a practical design rehearsal: a reconciliation job and a reporting service, explained out loud with failure handling and reprocessing.
  5. Days 12-14: Behavioral STAR stories, a recorded-answer rehearsal if your track includes one, and a timed solo mock. Round out the sector context with our finance interview help hub.

Structure and prompts during your live JPMorgan Chase rounds

CoPilot Interview is a native desktop assistant for Windows and macOS that surfaces structured approaches and talking points during real coding, design, and behavioral rounds. There is a permanent free tier, with Standard at $14.99 and Pro at $29.99 if you want more.

Try the free tier

FAQ

How hard are JPMorgan coding interview questions?

Candidates typically describe a fair, fundamentals-weighted bar rather than a puzzle gauntlet. Most reported problems sit in the LeetCode easy-to-medium range, with the harder end appearing in quant and low-latency markets technology roles. Across tracks, a clean solution you can explain and defend usually scores better than a clever one you cannot justify.

What is the JPMorgan Software Engineer Program?

It is the firm's early-career track for graduates, typically combining structured training with rotations across teams. Recruiting commonly runs on a campus timeline with applications well ahead of the start date, and candidates usually describe an online assessment and a recorded or virtual interview stage before a final round. Because dates and stages shift year to year, check the current posting and confirm with your recruiter.

Does the JPMorgan interview differ by line of business?

Yes, and this is the most important thing to know. JPMorgan Chase hires engineers at enormous scale across consumer banking, corporate and investment banking, asset and wealth management, and infrastructure, and each area runs its own loop with its own emphasis. A payments platform team, a risk systems team, and a markets technology desk will weight coding, design, and domain knowledge very differently, so ask your recruiter what your specific loop covers.

What topics should I study for a JPMorgan software engineer interview?

Start with core data structures and algorithms: arrays and strings, hash maps, two pointers, sorting, trees and graphs with BFS and DFS, and light dynamic programming. Add real depth in your primary language, SQL and relational data modelling, API design, testing, and version control, since a lot of the work is long-lived systems that others maintain. For quant or markets roles, add probability, statistics, and numerical care.

How much does communication matter at JPMorgan?

A great deal. Interviewers repeatedly describe looking for engineers who can explain a trade-off to someone outside their team, because most systems at the firm are long-lived, regulated, and maintained by people who did not write them. Narrate your reasoning, state assumptions, name the alternative you rejected and why, and prepare behavioral answers that show collaboration and careful judgement.