JPMC SDE3 Bengaluru Interview Experience || SuperDay
Summary
I recently interviewed for an SDE3 position at JPMC in Bengaluru, which involved an online assessment, a coding round, a system design round, and a behavioral round, all conducted as part of a Superday format.
Full Experience
I recently had the opportunity to interview for an SDE3 position at JPMC (J.P. Morgan & Chase) in Bengaluru. I applied via LinkedIn and received an email to complete an online assessment within two days.
Round 1: Online Assessment
The online assessment consisted of two LeetCode Medium questions, which I had to complete within 60 minutes.
- Minimum number of platforms needed for a railway station.
- Counting valid substrings with no repeating adjacent characters and a length within a specified range (minLen, maxLen).
I managed to complete both questions within the given time limit.
After almost a month, I received a call from HR inquiring about my availability for interviews. The interview format was a "Superday," meaning all rounds would happen on the same day with 15-minute breaks, and each round would occur independently of the previous rounds' outcomes.
Round 2: Code Pair
This round was divided into two sections:
PR Review (10 mins)
I was presented with a Pull Request and its description. The focus was primarily on my understanding of Design Principles, Security Concerns, Logging, Clean Code practices, identifying potential SQL Injections, Middleman Attacks, and Concurrency/Multi-threading issues.
DSA Problem
I was given a matrix of size m*n containing 1s and 0s. The task was to count the number of connections that could be made from one level to the next feasible level. A node represented by 1 could connect to a 1 on the next level. If any level had no 1s, I needed to check for the next possible level that did. For example, given int[][] graph = [[1,0,0,1], [1,1,0,1], [0,0,0,0], [1,0,0,0]], the count would be 2 * 3 + 3 * 1 = 9.
Round 3: System Design
For this round, I had to design a News Aggregator System on a HackerRank Whiteboard. The system needed to present real-time updates from multiple news sources to a UI, where users could log in and set their preferences.
My approach for this round involved:
- Defining Functional Requirements
- Defining Non-Functional Requirements
- Creating a High-Level Design Diagram
- Discussing Database Schema (Tables, Columns)
- Outlining necessary APIs
Round 4: Behavioral Round
This round began with discussions about my resume and the projects I had worked on. Following that, I answered behavioral questions based on my project experiences and some generic situational questions.
- How do you keep up with the latest technologies?
- How do you handle pushback on a solution from higher management?
Interview Questions (6)
Given arrival and departure times for a series of trains, determine the minimum number of platforms required for a railway station so that no train has to wait.
Given a string and a range (minLen, maxLen), count the number of substrings such that no adjacent characters are repeating and the length of the substring is within the given range.
Given a binary matrix (0s and 1s) representing levels, where a '1' indicates a node. Count the total number of connections that can be made from '1's at one level to '1's at the next feasible level. A feasible level is the next level that contains at least one '1'. If a level has no '1's, skip it and look for the next level with '1's. Connections are established between all '1's of the current level and all '1's of the next feasible level. The example provided shows count: 2 * 3 + 3 * 1 = 9 for [[1,0,0,1], [1,1,0,1], [0,0,0,0], [1,0,0,0]].
Design a News Aggregator System that can collect real-time updates from multiple news sources and present them to a UI. Users should be able to log in and set their preferences for news topics or sources. The design should cover functional and non-functional requirements, high-level architecture, database schema, and APIs.
Discuss your approach to staying current with the latest technologies and industry trends.
Describe a situation where higher management pushed back on one of your proposed solutions and how you handled it.