JPMorgan Chase SDE-3 Java Full stack developer Interview Experience (Bangalore)

jp morgan chase logo
jp morgan chase
SDE-3 Java Fullstack DeveloperBangalore4.5 yearsWithdrew
November 19, 20252 reads

Summary

I interviewed for a SDE-3 Java Fullstack Developer role at JPMC in Bangalore. Although I was selected, the offer was for a downleveled SDE-2 role due to my years of experience and performance in the LLD round, which I subsequently declined.

Full Experience

1st Round (Coding)

This round focused on breadth of knowledge rather than depth, as I was asked multiple LeetCode medium-type questions within an hour. I was able to answer most of these since they were quite popular. The interviewer was also helpful, providing hints when needed. While I coded the first question fully, for others, I mainly wrote down the core logic in 2-3 lines. There was also some discussion regarding the work I had highlighted on my resume.

2nd Round (LLD)

Although this round was designated for Low-Level Design, it delved heavily into Java fundamentals and its unique aspects compared to other languages. I was asked about the advantages of new features in Java 21, and to compare Java with languages like Scala (which I have experience with). Concurrency control in Java and its extension to distributed systems was also a major topic. I was given a piece of code to review for issues and another to debug and fix. There was an in-depth discussion about the technologies I've worked with, the design choices I made, and the rationale behind those decisions. This was one of the harder rounds I've experienced, as I was grilled rigorously on every point I brought up.

3rd Round (HLD + Behavioral)

This round was conducted by the Head of the department I was interviewing for. It began with a discussion about the new business initiatives they are building. Following this, behavioral questions were asked about my motivation for joining JPMC and the kind of work I was looking for.

The High-Level Design question involved designing a website capable of taking files/folders (like Aadhar documents) from a user, validating them through a third-party software (which takes 2-3 seconds), storing them in our system, and then providing a tracking link back to the user. Key discussion points revolved around storage strategies (e.g., file metadata in a database, file bytes in S3), managing the validation delay while ensuring a positive user experience (I suggested an asynchronous worker fleet and temporary storage), API design, and scaling considerations for the system.

Ultimately, I was selected for the role but with a downlevel to an SDE-2 position. The primary reasons given were that my overall experience (4.5 YOE) was less than most SDE-3s in their organization (who typically had >6 years), and my performance in the second round specifically did not meet the SDE-3 bar. I chose to decline the offer, despite the compensation being quite good and almost matching an SDE-3 salary to align with my current compensation.

Interview Questions (12)

Q1
Min Stack
Data Structures & Algorithms

Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. The focus was on achieving the most optimal solution without using extra space.

Q2
Delete Node in a Linked List
Data Structures & Algorithms

Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.

Q3
Trapping Rain Water
Data Structures & Algorithms

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.

Q4
Two Sum
Data Structures & Algorithms

Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.

Q5
Binary Tree Level Order Traversal
Data Structures & Algorithms

Given the root of a binary tree, return the level order traversal of its nodes' values. (i.e., from left to right, level by level).

Q6
Java 21 New Features
Other

Discuss the advantages of new features introduced in Java 21.

Q7
Java vs. Scala Comparison
Other

Compare Java with other languages like Scala, specifically highlighting differences and advantages.

Q8
Concurrency Control in Java and Distributed Systems
Other

Explain concurrency control mechanisms in Java and how they extend to distributed systems.

Q9
Code Review
Other

I was given a piece of code and asked to review it for potential issues, improvements, or bugs.

Q10
Debugging Code
Other

I was given a piece of code containing bugs and asked to identify and fix them.

Q11
Motivation and Career Aspirations
Behavioral

Discussion centered on my motivation for joining JPMC and the type of work I am seeking.

Q12
Design a Document Upload & Validation System
System Design

Design a website that allows users to upload files/folders (e.g., Aadhar documents). The system should validate these documents using a third-party software (which takes 2-3 seconds), store them, and provide a tracking link back to the user. Key discussion points included storage mechanisms (file metadata in a DB, file bytes in S3), handling the validation delay while providing a good user experience (e.g., using an async worker fleet and temporary storage), API design, and scaling considerations.

Preparation Tips

My preparation for the coding rounds largely involved practicing popular LeetCode questions, which enabled me to answer most of the problems given they were commonly known. For the LLD and HLD rounds, my preparation was based on my prior professional experience and knowledge of Java fundamentals, distributed systems, and system design principles.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!