i
JPMorgan Chase & Co.
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
Clear (1)
HashMap is a data structure that stores key-value pairs and uses hashing to efficiently retrieve values.
HashMap internally uses an array of linked lists to store key-value pairs.
When a key-value pair is added, the key is hashed to determine the index in the array where it will be stored.
If multiple keys hash to the same index, a collision occurs and the key-value pairs are stored in a linked list at that index.
To retri...
Threads are lightweight processes within a single process, sharing memory space. Processes are independent instances of a program.
Threads share memory space, making communication between threads faster and more efficient.
Processes have their own memory space, making them more isolated and secure.
Threads are faster to create and terminate compared to processes.
Processes are more stable and reliable, as a crash in one pr...
I applied via LinkedIn and was interviewed in Aug 2023. There were 2 interview rounds.
Basic DSA questions were asked with hashmaps and collections
Rotate a 2-D matrix
Iterate through each layer of the matrix
For each layer, swap the elements in a cyclic manner
Repeat the process for all layers until the entire matrix is rotated
I applied via Naukri.com and was interviewed in Dec 2022. There were 3 interview rounds.
What people are saying about JPMorgan Chase & Co.
Basic python and data structure, time complexity of programs
Object-oriented programming principles for organizing and designing code.
Encapsulation: Bundling data and methods that operate on the data into a single unit.
Inheritance: Allowing a class to inherit properties and behavior from another class.
Polymorphism: Ability for objects to take on multiple forms or types.
Abstraction: Hiding complex implementation details and showing only necessary features.
JPMorgan Chase & Co. interview questions for designations
I applied via Approached by Company and was interviewed before Sep 2023. There were 3 interview rounds.
String intern is a method in Java that returns a canonical representation of a string object.
String intern() method returns a canonical representation for the string object.
If a string with the same contents is already in the string pool, then it returns the reference to that string.
If not present, it adds the string to the pool and returns the reference.
Hackerrank - Coding test
Get interview-ready with Top JPMorgan Chase & Co. Interview Questions
I was interviewed before Feb 2024.
Assignment for angular
Test discussion with work flow and concept understanding
I was interviewed in Jun 2022.
Spark accumulators are used to accumulate values across multiple tasks in a distributed manner.
Accumulators are used to accumulate values across multiple tasks in a distributed manner
They are used to implement counters and sums in Spark
Accumulators are read-only variables that can only be updated by an associative and commutative operation
Partitioning is the process of dividing a large dataset into smaller, more manage...
I applied via LinkedIn and was interviewed before Apr 2023. There were 4 interview rounds.
Coding skills dynamic programming
Technical coding skills
I applied via Approached by Company and was interviewed in Apr 2022. There were 2 interview rounds.
SOLID principles are a set of five design principles that help in creating maintainable and scalable software applications.
S - Single Responsibility Principle (SRP)
O - Open-Closed Principle (OCP)
L - Liskov Substitution Principle (LSP)
I - Interface Segregation Principle (ISP)
D - Dependency Inversion Principle (DIP)
I was interviewed in Oct 2021.
Round duration - 60 Minutes
Round difficulty - Medium
This round had 1 very simple coding problem followed by some questions from Java and Spring.
Given a column title as it appears in an Excel sheet, your task is to return its corresponding column number.
S = "AB"
28
The seq...
Convert Excel column title to corresponding column number.
Iterate through the characters in the input string from right to left
Calculate the corresponding value of each character based on its position and multiply by 26^position
Sum up all the values to get the final column number
Lambda expression in Java is a concise way to represent a method implementation. It is related to functional interfaces by providing a single abstract method implementation.
Lambda expressions allow you to write concise code by providing a way to represent a method implementation in a more compact form.
Functional interfaces are interfaces with a single abstract method. Lambda expressions can be used to provide the imple...
Java 8 streams are a sequence of elements that support functional-style operations.
Streams allow for processing collections of data in a declarative way.
They support operations like filter, map, reduce, and collect.
Streams can be sequential or parallel, allowing for efficient processing of large datasets.
Example: List<String> names = Arrays.asList("Alice", "Bob", "Charlie"); Stream<String> stream = names.st
Autowiring in Spring Boot is a feature that allows Spring to automatically inject dependencies into a Spring bean.
Autowiring eliminates the need for explicit bean wiring in the Spring configuration file.
There are different modes of autowiring in Spring Boot: 'byName', 'byType', 'constructor', 'autodetect', and 'no'.
For example, in 'byName' mode, Spring looks for a bean with the same name as the property that needs to b
The @SpringBootApplication annotation is used to mark the main class of a Spring Boot application.
It is a combination of @Configuration, @EnableAutoConfiguration, and @ComponentScan annotations.
It tells Spring Boot to start adding beans based on classpath settings, other beans, and various property settings.
It is often placed on the main class that contains the main method to bootstrap the Spring Boot application.
Spring Boot offers basic annotations like @SpringBootApplication, @RestController, @Autowired, @RequestMapping, @Component, @Service, @Repository.
@SpringBootApplication - Used to mark the main class of a Spring Boot application.
@RestController - Used to define a RESTful controller.
@Autowired - Used for automatic dependency injection.
@RequestMapping - Used to map web requests to specific handler methods.
@Component - Use...
Round duration - 60 Minutes
Round difficulty - Medium
This round focused more on Multithreading concepts from Java and also some core concepts from OOPS.
A thread in Java is a lightweight sub-process that allows concurrent execution within a single process.
Threads allow multiple tasks to be executed concurrently in a Java program.
Each thread has its own stack and program counter, but share the same memory space.
Threads can be created by extending the Thread class or implementing the Runnable interface.
Example: Thread t1 = new Thread(new MyRunnable()); t1.start();
The start() method is used to start a new thread, while the run() method contains the code that will be executed by the thread.
start() method is used to start a new thread and calls the run() method internally
run() method contains the code that will be executed by the thread
It is recommended to override the run() method with the desired functionality
Thread class is a class in Java that extends the Thread class, while Runnable interface is an interface that implements the run() method.
Thread class extends the Thread class, while Runnable interface implements the run() method.
A class can only extend one class, so using Runnable interface allows for more flexibility in the class hierarchy.
Using Runnable interface separates the task from the thread, promoting better d...
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
Abstract class can have constructor, fields, and methods, while interface cannot have any implementation.
A class can only extend one abstract class, but can implement multiple interfaces.
Abstract classes are used to define common behavior among subclasses, while interfaces are used to define a contract for cla...
Garbage collector in Java is a built-in mechanism that automatically manages memory by reclaiming unused objects.
Garbage collector runs in the background to identify and delete objects that are no longer needed.
It helps prevent memory leaks and optimize memory usage.
Examples of garbage collectors in Java include Serial, Parallel, CMS, and G1.
SOLID principles are a set of five design principles in object-oriented programming to make software designs more understandable, flexible, and maintainable.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Objects of a superclass should be replaceable...
Round duration - 60 minutes
Round difficulty - Medium
This was a System Design Round where I was asked a LLD question to design a URL Shortener followed by a very standard question of LRU Cache. Overall this round went well and the interviewer was also quite satisfied by my answers.
A URL shortener service that generates short URLs for long links.
Generate a unique short code for each long URL
Store the mapping of short code to long URL in a database
Redirect users from short URL to original long URL
Implement analytics to track click-through rates
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 keep track of the order of keys based on their recent usage.
Use a hashmap to store key-value pairs for quick access and updates.
When capacity is reached, evict the least recently used item before inserting a new item.
Update the order of keys in the linked list whenever
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.
Some of the top questions asked at the JPMorgan Chase & Co. Senior Software Engineer interview -
The duration of JPMorgan Chase & Co. Senior Software Engineer interview process can vary, but typically it takes about 2-4 weeks to complete.
based on 18 interviews
3 Interview rounds
based on 63 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