JPMorgan Chase runs one of the largest engineering organizations anywhere: roughly 60,000 technologists, more people writing code than work at most of the firms that call themselves tech companies. If you’re interviewing for a software engineering or strats role there in 2026, the pipeline is more standardized than that headcount suggests. A HackerRank online assessment, one or two phone screens, and a final round the firm calls a Superday.
The bar is real but not exotic. This isn’t a place that asks you to invent a novel algorithm under pressure. It’s a place that wants to know you write correct code, reason about a system auditors will read, and stay calm when a trade breaks at 4pm on a Friday. Here’s how each stage works and what actually gets tested.
The online assessment is HackerRank, and it’s the real filter
For most software roles, the first gate is a HackerRank test: usually two or three coding problems in a 70 to 90 minute window, with the occasional multiple-choice section on CS fundamentals depending on the track. The problems sit at LeetCode easy-to-medium. Think arrays, strings, hash maps, a stack question, maybe one tree or graph traversal. Full test coverage and passing the hidden cases matters more than clever one-liners. Write the brute force, get it passing, then tighten it if you have time.
Early-careers candidates sometimes see extra pieces bolted on: a HireVue-style recorded video with behavioral prompts, and in past campus cycles a set of Pymetrics games. If you’re a student, the fastest way in is often Code for Good, JPMorgan’s hackathon where teams build software for nonprofits over a weekend. It’s a genuine recruiting funnel, not a PR event, and strong performers get fast-tracked to summer analyst and full-time software roles.
Phone screens: one technical, sometimes one with the hiring manager
Clear the OA and you get a live screen with an engineer, typically in a shared editor like CoderPad or HackerRank’s collaborative mode. Expect one or two medium problems and a real conversation about a project on your resume. If you claim you built something, be ready to explain the design decisions and what you’d change now.
Language-specific questions show up here for Java roles, which is most of the consumer and payments org. A few that come up often:
- What’s the difference between
HashMapandConcurrentHashMap, and when do you reach for the second one? - Explain
==versus.equals()and howhashCode()ties in. - How does the JVM decide what to garbage collect?
- What problem does Spring dependency injection actually solve for you?
The Superday: several rounds back to back
The final stage is three to four interviews of 45 to 60 minutes each, often in one sitting. Historically onsite at a tech center, still frequently virtual depending on the location and team. The mix is coding, a design round for anything above entry level, and at least one behavioral conversation.
Take the behavioral round seriously. At a regulated bank, your interviewer genuinely cares whether you’ll follow change controls, own a production incident, and work with a team of thirty rather than three. “Tell me about a time you shipped something that broke in production” is a real question, and “I’ve never broken anything” is the wrong answer. Coding prompts on the day look like this:
- Given an array of integers, return the indices of the two numbers that sum to a target.
- Find the length of the longest substring without repeating characters.
- Count the number of islands in a grid of 0s and 1s.
- Design and implement an LRU cache with O(1) get and put.
Strats, quant dev, and why Athena matters
Strats at JPMorgan are quantitative developers who sit close to the trading desk in the markets and Quantitative Research businesses. The role is heavy Python, and it lives on a platform called Athena: a firm-wide, cross-asset system for pricing and risk built around a live dependency graph, conceptually similar to Goldman’s SecDB. You won’t be tested on Athena itself since you learn it on the job, but the interview signals whether you can think the way it demands: clean Python, comfort with data, and probability that you can reason through out loud.
Probability and expected-value questions are standard for strats and QR:
- You flip a fair coin until you get two heads in a row. What’s the expected number of flips? (It’s 6.)
- A bag has 3 red and 5 blue balls. You draw two without replacement. What’s the probability both are red?
- You roll a die once. You may keep the value or re-roll once and take the second value. What’s the optimal strategy, and the expected value?
- Write a Python function that finds the two most frequent elements in a list, and give its time complexity.
None of this requires stochastic calculus for a developer-track strat role. Conditional probability, expected value, Bayes, and clear Python get you most of the way. Desk-quant and QR researcher roles go deeper into stochastic processes and derivatives math, so calibrate to the exact posting.
System design once you’re past the junior band
For Software Engineer III and Vice President roles, expect a design round anchored in the firm’s actual problems rather than a generic “design Twitter” prompt. Common shapes: a payments backend that has to be idempotent and fully auditable, an end-of-day trade reconciliation service, a rate limiter for an internal API, or a market-data distribution fan-out. Talk about consistency, retries, idempotency keys, and how you’d prove correctness to an auditor. That last part is what separates a bank design answer from a startup one.
What the tech culture is actually like for engineers
It’s a regulated bank, and that shapes the day. You’ll deal with change management, SDLC gates, mandatory code review, and audit trails on production access. That’s more process than a startup and less than the horror stories suggest. In exchange you work on scale that’s hard to find elsewhere: the Chase mobile app serves tens of millions of customers, and the payments rails move trillions of dollars a day, where a bug isn’t a bad tweet, it’s real money.
The firm has spent years migrating onto public cloud (AWS) alongside its internal private cloud, so a lot of teams are doing genuine modernization rather than babysitting mainframes, though legacy still exists in corners. Stack-wise it’s Java and Spring across most of consumer and payments, Python for strats and data, and React or Angular on the front end. Since 2025, JPMorgan has been on a five-day in-office policy under Jamie Dimon, so factor that in.
Your experience depends heavily on your team and your location. JPMorgan concentrates engineering in tech centers including Columbus, Plano, Jersey City, Glasgow, Bournemouth, Hyderabad, Bengaluru, Buenos Aires, and Warsaw. A payments team in Plano and a markets strats desk in New York are almost different companies. Interview for the group, not the logo.
What the money looks like
Base salaries are competitive, especially at the mid level in lower-cost tech centers. The difference from big tech is the bonus. Banks pay a cash-weighted annual bonus, and at senior levels part of it defers into vesting cash or restricted stock over several years, rather than the large annual RSU grants that push Google or Meta total comp higher. At entry and mid levels the gap is small. At senior and staff-equivalent levels, big tech usually pulls ahead on total comp because of equity. These are rough US ranges; check levels.fyi and Glassdoor for the current numbers on your specific title and city.
| JPMorgan level (US tech role) | Corporate title | Approx. base salary range | Approx. total comp range (base + bonus) |
|---|---|---|---|
| Software Engineer II / new grad | Analyst | $85k–$130k | $100k–$155k |
| Software Engineer III (mid) | Associate | $115k–$170k | $140k–$215k |
| Lead Software Engineer (senior) | Vice President | $160k–$230k | $200k–$330k |
| Lead / senior manager | Executive Director | $200k–$300k+ | $260k–$450k+ (bonus-dependent) |
Treat every cell as an estimate, not a quote. Bonuses swing hard with the firm’s results and your desk, and markets-facing strats roles can pay well above the software bands in a strong year. The numbers move enough year to year that you should verify before you negotiate.
How to prep without overdoing it
Grind LeetCode easy and medium, weighted toward arrays, strings, hash maps, two-pointer and sliding-window patterns, and basic tree and graph traversal. You do not need to memorize hard dynamic programming for most software tracks. If you’re going for a Java role, refresh the collections framework, concurrency primitives, and enough Spring to explain what dependency injection buys you. For strats, drill probability and expected value until you can talk through them without freezing, and write clean Python fast.
Then do the part most candidates skip: know the business line. Read what the group actually builds, have a real answer for why JPMorgan over a pure tech job, and be ready to describe a production problem you owned end to end. Practice at least one problem in a shared editor with someone watching, because typing while explaining is a separate skill from solving alone. The people who do well here treat it as an engineering job at a bank, not a bank that happens to employ engineers.
Similar company guides
Prepping for JPMorgan Chase? Put it to work: