Sitemap

My Software Engineer 3 Interview at JPMorgan Chase

3 min read5 days ago

--

I recently went through a 60-minute technical loop for a Software Engineer 3 (Senior/Lead) role at JPMorgan Chase & Co. (JPMC). I applied directly through their corporate career page and was contacted by a recruiter a few weeks later.

Going into the round, I was feeling incredibly dizzy and exhausted from intense preparation. Fortunately, the interviewer was exceptionally sweet, chill, and empathetic. Seeing that I was under the weather, she told me it was completely fine to skip writing live syntax line-by-line and instead focus entirely on explaining my architectural approaches, logic, and system intuition.

Get Harshvardhan Sinha’s stories in your inbox

Join Medium for free to get updates from this writer.

The interview lasted exactly an hour. It was a rapid-fire, comprehensive barrage covering algorithmic logic, low-level Java concurrency, distributed systems, and heavy production SRE scenarios. I walked out thinking I nailed about 60% of the answers accurately. However, I ended up getting a rejection letter.

Looking back, my biggest mistake wasn’t technical accuracy — it was giving isolated, textbook definitions. At the Senior/Lead level, tier-1 financial institutions look for operational ownership and production empathy. I focused too much on giving exact, clinical answers instead of weaving real-world debugging stories and architectural trade-offs into the conversation.

Press enter or click to view image in full size
Photo by Leuchtturm Entertainment on Unsplash

🧠 Algorithmic Logic & Coding Intuition

  • The Two-Sum Problem: How do you solve it efficiently, and what are the time/space complexity trade-offs?
  • Printing Repeating Elements: Given an array, how do you print the repeating elements exactly once without duplicating your console output?

☕ Deep Java Concurrency & Spring Framework

  • HashMap vs. ConcurrentHashMap: What is the structural difference between them?
  • Thread Safety Mechanics: Why exactly is ConcurrentHashMap thread-safe under parallel mutations?
  • Spring Internals: How does the @Transactional annotation work under the hood?
  • Data Modification: Which annotation do you use to update a database query using a custom update statement in Spring Data JPA?
  • Multithreading in Production: How are you utilizing multithreading in your project? Can you explain a use case involving CompletableFuture?

🏗️ Distributed Systems Architecture (Kafka & Cassandra)

  • Cassandra Data Distribution: How do you design and execute partitioning and clustering keys in Cassandra?
  • Kafka Architecture: Tell me about how Kafka is integrated into your current project topology.
  • Message Duplicacy: How do you handle and mitigate duplicate messages or guarantee idempotency in Kafka?
  • Consumer Performance: How do you investigate and fix a sudden spike in Kafka consumer lag? Have you used a technique or library like Parallel Consumer?
  • Fault Tolerance: Do you use a circuit breaker anywhere in your project? Where and why?

🚑 Production SRE & Incident Management

  • Infrastructure Footprint: Where is your on-premises architecture deployed, and how is your API Gateway being deployed?
  • Production Incidents: Have you ever faced a production incident where your pod was crashing (CrashLoopBackOff)? How did you investigate, isolate, and fix it?
  • Memory Management: Has an Out Of Memory (OOM) error ever occurred in production for any of your services? What was your step-by-step investigation and remediation process?
  • System Resiliency: Explain what the Digital Resiliency Engine (DRE) project you are working on does.
  • Resiliency Tools: How are you using a rate limiter to protect backend dependencies?
  • HTTP Architecture: Can you explain the various 4xx error codes, specifically focusing on a real-world scenario for an HTTP 409 Conflict?

🌐 Engineering Topography & Team Dynamics

  • Authentication Infrastructure: How is token refresh handled in your project? Is it built over standard JWT, or an OAuth/OIDC framework?
  • Spring Controllers: How do you appropriately use @RequestParam and @QueryParam in REST controllers?
  • DevOps Ownership: Do you handle CI/CD or DevOps pipelines directly? Is infrastructure handled by the developers or a dedicated infrastructure/platform team?
  • Augmented Engineering: How do you use Generative AI in your daily engineering work, and can you share an example where AI has helped you solve a problem?

While hitting 60% of the technical definitions is a solid baseline, companies like JPMorgan Chase look for engineers who possess deep operational empathy and ownership. The sweetest interviewers are often looking for you to take charge of the conversation, moving past textbook terminology to tell the story of your code in production.

--

--

Harshvardhan Sinha
Harshvardhan Sinha

Written by Harshvardhan Sinha

A Software Engineer, striving towards realisations.