i
JPMorgan Chase & Co.
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I appeared for an interview in Nov 2022.
Round duration - 60 Minutes
Round difficulty - Medium
This round had questions mainly from Java 8 and its important features followed by some questions from Spring Boot.
Java 8 streams are a sequence of elements that can be processed in parallel or sequentially.
Streams provide a functional programming approach to process collections in Java.
They allow for concise and expressive code.
Streams can be used to filter, map, reduce, and perform other operations on data.
Example: List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5); numbers.stream().filter(n -> n % 2 == 0).forEach(System....
A Java 8 program to iterate a Stream using the forEach method.
Create a Stream object from a collection or array
Use the forEach method to perform an action on each element of the Stream
The action can be a lambda expression or a method reference
Spring Boot is a framework that simplifies the development of Java applications by providing default configurations and dependencies.
Spring Boot eliminates the need for manual configuration by providing sensible defaults.
It uses an embedded server, such as Tomcat or Jetty, to run the application.
Spring Boot automatically configures the application based on the dependencies added to the project.
It promotes convention ov...
Dependency Injection is a design pattern where the dependencies of a class are provided externally rather than being created within the class itself.
Dependency Injection helps in achieving loose coupling between classes.
It allows for easier testing and maintenance of code.
In Spring Boot, dependencies are injected using annotations like @Autowired.
Example: In a Spring Boot application, if a class requires a database con...
The @RestController annotation in Spring Boot is used to mark a class as a RESTful controller.
It combines the @Controller and @ResponseBody annotations.
It eliminates the need for annotating each method with @ResponseBody.
It automatically serializes the return value of the methods into JSON/XML response.
It is commonly used to build RESTful web services in Spring Boot.
Different methods of session management in Servlet
Cookies
URL Rewriting
Hidden Form Fields
Session Tracking API
HTTP Session
Round duration - 60 Minutes
Round difficulty - Medium
This was a preety much mixed round ranging questions from Java , MVC to DBMS , Web Security and API Design. More emphasis was given on the fundamentals of the subject rather than the advanced topics.
CORS in MVC is Cross-Origin Resource Sharing, a mechanism that allows restricted resources on a web page to be requested from another domain.
CORS is a security feature implemented in web browsers to prevent cross-origin requests by default.
It works by adding specific HTTP headers to the server's response, indicating which origins are allowed to access the resources.
In MVC, CORS can be configured using the 'EnableCors' ...
MVC components include Model, View, and Controller. Model represents data and business logic, View displays the data, and Controller handles user input and updates the Model and View.
Model: Represents data and business logic
View: Displays the data to the user
Controller: Handles user input and updates the Model and View
Clustered index determines the physical order of data in a table, while non-clustered index has a separate structure.
Clustered index determines the physical order of data in a table
Non-clustered index has a separate structure that includes a copy of the indexed columns and a pointer to the actual data
A table can have only one clustered index, but multiple non-clustered indexes
Clustered index is faster for retrieving la...
SQL injection is a web security vulnerability that allows an attacker to manipulate a database query to execute unauthorized actions.
SQL injection occurs when user-supplied data is not properly validated or sanitized before being used in an SQL query.
Attackers can exploit this vulnerability to bypass authentication, retrieve sensitive data, modify or delete data, or even execute arbitrary commands.
To prevent SQL inject...
Web services offer advantages such as interoperability, scalability, reusability, and platform independence.
Interoperability: Web services allow different applications to communicate and share data regardless of the programming languages or platforms they are built on.
Scalability: Web services can handle a large number of requests and can be easily scaled up or down to meet changing demands.
Reusability: Web services pr...
Round duration - 45 Minutes
Round difficulty - Medium
This round started with some questions from Frontend Web Development primarily from HTML and CSS followed by some questions from DevOps and Git. The interviewer was quite satisfied by my answers and overall this round went preety well.
Optimize website assets loading by minimizing file sizes, leveraging caching, and using asynchronous loading.
Minimize file sizes by compressing images, minifying CSS and JavaScript files
Leverage caching by setting appropriate cache headers and using a content delivery network (CDN)
Use asynchronous loading techniques such as lazy loading, deferred loading, and async/defer attributes
Combine and bundle multiple files to r...
New tags in Media Elements in HTML5 include <audio> and <video>.
<audio> tag for audio content
<video> tag for video content
Attributes like controls, autoplay, loop, etc. can be used with these tags
Docker is a containerization platform that allows developers to package applications with their dependencies for easy deployment and scalability.
Docker enables developers to create lightweight, isolated containers that can run on any operating system.
It simplifies the deployment process by ensuring that the application and its dependencies are bundled together, eliminating compatibility issues.
Docker allows for easy sc...
Git pull combines git fetch and git merge, while git fetch only downloads new data from a remote repository.
Git pull is used to update the local branch with the latest changes from the remote repository.
Git fetch only downloads new data from the remote repository, but does not integrate it into the local branch.
Git pull is a combination of git fetch and git merge commands.
Git fetch is useful to see what changes have be...
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 applied via Naukri.com and was interviewed in May 2022. There was 1 interview round.
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Medium
It was a cumulative test
You are given an array ARR
of long type, which represents an elevation map where ARR[i]
denotes the elevation of the ith
bar. Calculate the total amount of rainwater t...
Calculate the total amount of rainwater that can be trapped within given elevation map.
Iterate through the array to find the maximum height on the left and right of each bar.
Calculate the amount of water that can be trapped above each bar by taking the minimum of the maximum heights on the left and right.
Sum up the trapped water above each bar to get the total trapped water for the elevation map.
Round duration - 90 minutes
Round difficulty - Medium
It was sophisticated in nature and a good brain buster.
Prateek is a kindergarten teacher with a mission to distribute candies to students based on their performance. Each student must get at least one candy, and if two s...
Determine the minimum number of candies needed to distribute to students based on their performance and ratings.
Iterate through the array of student ratings and assign 1 candy to each student initially.
Then iterate from left to right and check if the current student's rating is higher than the previous student, if so, assign candies accordingly.
Similarly, iterate from right to left to handle cases where the current stu...
Round duration - 1 hour
Round difficulty - Medium
It revolved around basic concepts
DBMS is a software system that manages databases and allows users to interact with data stored in them.
DBMS stands for Database Management System
It helps in creating, updating, and managing databases
Examples of DBMS include MySQL, Oracle, SQL Server
It ensures data integrity, security, and efficient retrieval
Round duration - 70 minutes
Round difficulty - Hard
It was a great experience
Tip 1 : Stay consistent with your efforts
Tip 2 : Work hard with honesty
Tip 3 : Try to set goal of +1 level from the goal you want to achieve
Tip 1 : Present yourself with honesty
Tip 2 : Mention about the Workshops, hackathons, achievements, and the projects.
I appeared for an interview before Mar 2021.
Round duration - 90 minutes
Round difficulty - Medium
There were 33 questions in total. The objective questions were simple.
Mary is an enthusiastic party-goer who struggles with remembering event dates. Help Mary by sorting a given list of event dates in an ascending order.
Sort a list of event dates in ascending order based on year, month, and day.
Sort the list of dates based on year, then month, and finally day.
Use a sorting algorithm to rearrange the dates in ascending order.
Ensure the constraints are met for each date in the list.
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'.
Given an array and a target sum, find all pairs of elements that add up to the target sum.
Iterate through the array and for each element, check if the complement (target sum - current element) exists in a hash set.
If the complement exists, add the pair to the result list.
Sort the pairs based on the first element and then the second element.
Handle edge cases like duplicate elements and pairs with the same values.
Example...
Given an integer N
, your task is to recursively break it into three integer parts: N / 2
, N / 3
, and N / 4
. You need to compute the maximum sum possible by dividing the numbe...
Given an integer N, recursively break it into three parts and find the maximum sum possible.
Recursively divide N into N/2, N/3, and N/4 to find the maximum sum
Compare the sum obtained by dividing N with the sum of N itself
Return the maximum sum for each test case
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 appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Medium
Technical Interview round with questions based on DSA.
Given an array ARR
of size N
, containing each number between 1 and N-1
at least once, identify the single integer that appears twice.
The first line contains an integer...
Identify the duplicate integer in an array containing numbers between 1 and N-1.
Iterate through the array and keep track of the frequency of each element using a hashmap.
Return the element with a frequency greater than 1 as the duplicate integer.
Ensure the constraints are met and a duplicate number is guaranteed to be present.
You are given an arbitrary binary tree consisting of N nodes, each associated with an integer value from 1 to 9. Each root-to-leaf path can be considered a number formed by concat...
Calculate the total sum of all root to leaf paths in a binary tree formed by concatenating node values.
Traverse the binary tree from root to leaf nodes, keeping track of the current path sum
Add the current node value to the path sum and multiply by 10 for each level
When reaching a leaf node, add the final path sum to the total sum
Return the total sum modulo (10^9 + 7)
You are given a directed acyclic graph (DAG). Your task is to perform topological sorting of the graph and return any valid ordering.
A directed acyclic g...
Implement a function to perform topological sorting on a directed acyclic graph (DAG) and return any valid ordering.
Create a graph data structure to represent the DAG
Use depth-first search (DFS) to perform topological sorting
Maintain a visited array to keep track of visited nodes
Return the ordering of nodes after DFS traversal
Round duration - 60 minutes
Round difficulty - Easy
Technical interview round with questions based on DSA.
You are given a binary tree consisting of distinct integers and two nodes, X
and Y
. Your task is to find and return the Lowest Common Ancestor (LCA) of these two nodes...
Find the Lowest Common Ancestor (LCA) of two nodes in a binary tree.
Traverse the binary tree to find the paths from the root to nodes X and Y.
Compare the paths to find the last common node, which is the LCA.
Handle cases where one node is an ancestor of the other.
Consider edge cases like when X or Y is the root node.
Implement a recursive or iterative solution to find the LCA efficiently.
You are provided with a sorted array that has undergone 'K' rotations (the exact value of 'K' is unknown). A rotation involves shifting each element of the array to the right,...
Implement a function to find the minimum number in a rotated sorted array efficiently.
Use binary search to find the minimum element in the rotated array.
Compare the mid element with the start and end elements to determine which half of the array to search next.
Continue the binary search until the minimum element is found.
Given an array TREE
of 'N' unique integers, construct a maximum binary tree using the following rules:
TREE
.Construct a maximum binary tree from an array of unique integers following specific rules.
Find the maximum number in the array to set as the root of the tree.
Recursively construct the left subtree with elements before the maximum number.
Recursively construct the right subtree with elements after the maximum number.
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 applied via Campus Placement
A chemical engineer can help Citi by providing expertise in process optimization, risk management, and sustainability.
Optimizing Citi's manufacturing processes to reduce costs and increase efficiency
Developing risk management strategies to ensure compliance with environmental regulations
Implementing sustainable practices to reduce Citi's environmental impact
Providing technical expertise in chemical reactions and materi...
I applied via Naukri.com and was interviewed in Aug 2020. There were 3 interview rounds.
To check palindrome and anagram of a string with O(n), use a hash table to store character frequencies.
Create a hash table to store the frequency of each character in the string.
For palindrome, check that no more than one character has an odd frequency.
For anagram, compare the hash tables of the two strings.
If the hash tables are equal, the strings are anagrams.
If the hash tables differ by only one character, the strin...
Optimized solutions and core principles applied in OOPS
Encapsulation, Inheritance, Polymorphism, Abstraction are core principles of OOPS
Optimized solutions can be achieved through efficient algorithms and data structures
Design patterns like Singleton, Factory, Observer can also be used for optimized solutions
based on 4 reviews
Rating in categories
Associate
10.4k
salaries
| ₹10 L/yr - ₹43.4 L/yr |
Team Lead
5.6k
salaries
| ₹5.7 L/yr - ₹16.7 L/yr |
Vice President
4.1k
salaries
| ₹20 L/yr - ₹70 L/yr |
Analyst
2.6k
salaries
| ₹6.5 L/yr - ₹26 L/yr |
Software Engineer
2.6k
salaries
| ₹11 L/yr - ₹35.3 L/yr |
Morgan Stanley
Goldman Sachs
TCS
Bank of America