i
JPMorgan Chase & Co.
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Referral and was interviewed before Oct 2022. There were 3 interview rounds.
Hackerrank test on coderpad
I was interviewed in Aug 2021.
Round duration - 65 Minutes
Round difficulty - Medium
This was an online proctured coding test where we had 2 questions to solve under 65 minutes. Both the questions were of difficulty Medium to Hard.
Given an integer array, your objective is to change all elements to the same value, minimizing the cost. The cost of changing an element from x
to y
is defined ...
Find the minimum cost to make all elements of an array equal by changing them to a common value.
Calculate the median of the array and find the sum of absolute differences between each element and the median.
Sort the array and find the median element, then calculate the sum of absolute differences between each element and the median.
If the array has an even number of elements, consider the average of the two middle elem
Given a pattern as a string and a set of words, determine if the pattern and the words list align in the same sequence.
T (number of test cases)
For each test ca...
Given a pattern and a list of words, determine if the words align with the pattern.
Create a mapping between characters in the pattern and words in the list.
Check if the mapping preserves the order of characters in the pattern.
Return 'True' if the sequence of words matches the order of characters in the pattern, else return 'False'.
Round duration - 50 Minutes
Round difficulty - Medium
This round had 2 algorithmic questions in which I first had to explain my approach with proper complexity analysis and then code the solution in any preferred IDE.
You are given an integer array 'ARR' of size 'N' and an integer 'S'. Your task is to find and return a list of all pairs of elements where each sum of a pair equals 'S'.
Find pairs of elements in an array that sum up to a given value, sorted in a specific order.
Iterate through the array and for each element, check if the complement (S - current element) exists in a hash set.
If the complement exists, add the pair to the result list.
Sort the result list based on the criteria mentioned in the question.
Return the sorted list of pairs.
Given a specified number of intervals, where each interval is represented by two integers denoting its boundaries, the task is to merge all overlapping interv...
Merge overlapping intervals and return sorted list of merged intervals.
Iterate through intervals and merge overlapping ones
Sort merged intervals based on starting times
Handle edge cases like empty input or single interval
Example: Input - [[1,4], [3,5], [6,8], [10,12], [8,9]], Output - [[1,5], [6,9], [10,12]]
Round duration - 60 Minutes
Round difficulty - Medium
This round had 1 standard coding question followed by some questions from OS and at last I was also asked some questions related to Statistics and Probability.
You are given a N x M
matrix of integers. Your task is to return the spiral path of the matrix elements.
The first line contains an integer 'T' which denotes the nu...
The task is to return the spiral path of elements in a given matrix.
Iterate through the matrix in a spiral path by adjusting the boundaries at each step.
Keep track of the direction of traversal (right, down, left, up) to cover all elements.
Handle edge cases such as when the matrix is a single row or column.
Implement the spiral path traversal algorithm efficiently to meet the time limit.
Ensure to print the elements in t
Use multiple threads to print numbers from 1 to 100 in an optimized approach.
Divide the range of numbers (1-100) among the threads to avoid overlap.
Use synchronization mechanisms like mutex or semaphore to ensure orderly printing.
Consider using a shared variable to keep track of the current number being printed.
Multitasking refers to the ability of an operating system to run multiple tasks concurrently, while multithreading involves executing multiple threads within a single process.
Multitasking allows multiple processes to run simultaneously on a single processor, switching between them quickly.
Multithreading enables a single process to execute multiple threads concurrently, sharing resources like memory and CPU time.
Multita...
Round duration - 30 Minutes
Round difficulty - Easy
This is a cultural fitment testing round .HR was very frank and asked standard questions. Then we discussed about my role.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
I was interviewed in Jun 2021.
Round duration - 65 Minutes
Round difficulty - Medium
This was an online proctured coding test where we had 2 questions to solve under 65 minutes. Both the questions were of difficulty Medium to Hard.
You are given a country called 'Ninjaland' with 'N' states, numbered from 1 to 'N'. These states are connected by 'M' bidirectional roads, each with a specified travel cost. Th...
Find the minimum cost selection of roads to travel to every state in a country.
Create a graph representation of the states and roads with their costs.
Use a minimum spanning tree algorithm like Kruskal's or Prim's to find the optimal roads.
Select 'N' - 1 roads with the lowest costs to cover all states.
Return the selected roads and their costs as output.
You are given a string of length N
. Your task is to reverse the string word by word. The input may contain multiple spaces between words and may have leading o...
Reverse words in a string while handling leading, trailing, and multiple spaces.
Split the input string by spaces to get individual words
Reverse the order of the words
Join the reversed words with a single space in between
Round duration - 60 Minutes
Round difficulty - Medium
In this round , the interviewer first asked me two algorithmic questions - the first one related to stacks and the second one was of Dynamic Programming. I was able to find the optimal approach for the both the questions and also discussed the time and space complexities. This was followed by some standard questions from OOPS.
You are given an array arr
of length N
. For each element in the array, find the next greater element (NGE) that appears to the right. If there is no such greater ele...
The task is to find the next greater element for each element in an array to its right, if no greater element exists, return -1.
Iterate through the array from right to left and use a stack to keep track of elements.
Pop elements from the stack until a greater element is found or the stack is empty.
Store the next greater element for each element in the output array.
Given a 2-D matrix mat
with 'N' rows and 'M' columns, where each element at position (i, j) is mat[i][j]
, determine the length of the longest increasing...
The problem involves finding the length of the longest increasing path in a 2-D matrix starting from a given cell.
Create a recursive function to explore all possible paths from a cell to its neighboring cells.
Use memoization to avoid redundant calculations and improve efficiency.
Keep track of the length of the longest increasing path found so far.
Consider edge cases such as when the matrix is empty or when there are no...
Inheritance in OOP allows a class to inherit properties and behaviors from another class.
Inheritance allows for code reusability by creating a new class based on an existing class.
The new class (subclass) can access all the properties and methods of the existing class (superclass).
Example: A 'Car' class can inherit from a 'Vehicle' class, gaining attributes like 'speed' and methods like 'drive'.
Virtual functions in C++ allow a function to be overridden in a derived class, enabling polymorphic behavior.
Virtual functions are declared in a base class with the 'virtual' keyword.
They are intended to be overridden in derived classes to provide specific implementations.
When a virtual function is called through a base class pointer or reference, the actual function to be called is determined at runtime based on the o...
Round duration - 60 Minutes
Round difficulty - Medium
This round had 2 questions from DSA followed by some questions from basics of DBMS and then I was asked some interesting questions from Probability.
Given a binary tree of integers, the task is to return the top view of the given binary tree. The top view of the binary tree is the set of nodes visible when viewed from the top.
...Return the top view of a binary tree given in level-order format.
Use a map to store the horizontal distance of each node from the root
Perform a level-order traversal and keep track of the horizontal distance of each node
For each horizontal distance, store the node value if it is the first node encountered at that distance
Design a data structure for a Least Recently Used (LRU) cache that supports the following operations:
1. get(key)
- Return the value of the key if it exists in the cache; otherw...
Design a Least Recently Used (LRU) cache data structure that supports get and put operations with capacity constraint.
Implement a doubly linked list to maintain the order of recently used keys.
Use a hashmap to store key-value pairs for quick access.
Update the order of keys in the linked list on get and put operations.
Evict the least recently used key when the cache reaches its capacity.
Handle edge cases like key not fo...
UNION combines and removes duplicates, UNION ALL combines without removing duplicates.
UNION removes duplicates, UNION ALL does not
UNION is slower than UNION ALL as it has to check for duplicates
UNION is used when you want to combine and remove duplicates, UNION ALL is used when you want to combine without removing duplicates
The probability of obtaining a sum of 22 or more when four dice are thrown.
Calculate the total number of outcomes when four dice are thrown.
Determine the number of outcomes where the sum is 22 or more.
Divide the favorable outcomes by the total outcomes to get the probability.
Use combinations and permutations to calculate the probabilities.
Round duration - 30 Minutes
Round difficulty - Easy
This is a cultural fitment testing round .HR was very frank and asked standard questions. Then we discussed about my
role.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
What people are saying about JPMorgan Chase & Co.
I applied via Company Website and was interviewed in May 2021. There were 3 interview rounds.
JPMorgan Chase & Co. interview questions for designations
I applied via Recruitment Consultant and was interviewed in Jun 2021. There were 4 interview rounds.
Get interview-ready with Top JPMorgan Chase & Co. Interview Questions
Multi tasking, multi processing, and multi programming are different approaches to managing tasks in an operating system.
Multi tasking allows multiple tasks to run concurrently on a single processor.
Multi processing involves multiple processors running tasks simultaneously.
Multi programming allows multiple programs to be loaded into memory and executed concurrently.
Examples of multi tasking operating systems include Wi...
Memory allocation refers to the process of assigning memory to programs during runtime.
Stack allocation is done automatically and is limited in size.
Heap allocation is done manually and is larger in size.
Stack memory is used for local variables and function calls.
Heap memory is used for dynamic memory allocation.
Memory leaks can occur if heap memory is not properly managed.
Use a shared variable and synchronization mechanisms to ensure natural order printing of numbers.
Create two threads, one for printing even numbers and the other for printing odd numbers.
Use a shared variable to keep track of the current number to be printed.
Implement synchronization mechanisms like locks or semaphores to ensure only one thread can access the shared variable at a time.
Each thread should check if it is i...
Printing a matrix in spiral order
Start from the first element and print it
Move in a spiral order towards the center of the matrix
Repeat until all elements are printed
Thread class and Runnable Interface are used for multithreading in Java.
Thread class is a predefined class in Java that provides methods to create and control threads.
Runnable interface is used to define a task that can be executed by a thread.
Thread class implements Runnable interface.
Thread class provides more control over threads than Runnable interface.
Example: Thread t = new Thread(new MyRunnable()); t.start();
Exa...
Linked List is a dynamic data structure while ArrayList is a static data structure.
Linked List is best for frequent insertion and deletion operations.
ArrayList is best for frequent access operations.
Linked List uses more memory than ArrayList.
ArrayList is faster than Linked List for accessing elements.
Use Linked List when you need to frequently add or remove elements from the list.
Use ArrayList when you need to frequen
I am not interested in a career in investment banking.
I am more interested in a career in software development
I enjoy problem-solving and creating innovative solutions through coding
Investment banking does not align with my passion and skill set
I have chosen to apply to J.P. Morgan because of their reputation, global presence, and opportunities for growth.
J.P. Morgan has a strong reputation in the financial industry.
They have a global presence with offices in multiple countries.
The company offers various opportunities for career growth and development.
J.P. Morgan is known for its innovative technology solutions in the financial sector.
I am impressed by their ...
Yes, I have made a mistake in my previous project.
I underestimated the complexity of a task and ended up missing the deadline.
I failed to properly test a feature, resulting in a bug that affected user experience.
I accidentally deleted an important file without having a backup.
I misunderstood a requirement and implemented a feature incorrectly.
Some of the top questions asked at the JPMorgan Chase & Co. Software Developer interview -
based on 24 interviews
4 Interview rounds
based on 53 reviews
Rating in categories
Associate
10.2k
salaries
| ₹0 L/yr - ₹0 L/yr |
Team Lead
5.6k
salaries
| ₹0 L/yr - ₹0 L/yr |
Vice President
4k
salaries
| ₹0 L/yr - ₹0 L/yr |
Analyst
2.6k
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Engineer
2.5k
salaries
| ₹0 L/yr - ₹0 L/yr |
Morgan Stanley
Goldman Sachs
TCS
Bank of America