JP Morgan Chase recently visited our campus for hiring students for Software Intern roles. The overall process was of 4 stages and each of the stages was eliminatory. Students from any department with a CGPA of 7.0 were allowed to sit for the test.
Round 1 (Pymetrics+ Online Test):
A pymetrics test link was forwarded to all the applicants. It was mandatory to take the test. It was a series of 12 games which were logical puzzles and brain teasers. The purpose of the test was to give the recruiters a basic idea of your reasoning and empathy. After this, an online coding round was held which consisted of 2 coding questions.
- First question: A string in the form of a sentence is given. The string should be reversed word-wise i.e., the first word will be the last word of the new string etc. Also, the first letter of the sentence should be upper case and the string should end with a full stop. The function should return the modified string.
- Second question: An incomplete sudoku is given with 0’s in the unfilled places. The task is to print solved sudoku.
Out of 600 plus applicants, 83 were shortlisted for the next round. Students who solved 1 question completely and the other partially, were shortlisted.
Round 2(Technical Interview):
This round was majorly about my projects and coding questions. The interviewer had gone through my resume and told me to explain my projects in brief. After that, he asked some questions about my projects. The questions were more of how I would handle the project under different scenarios. After this, we moved to Hackerrank Coderpad on which he gave me two coding questions. I was given seven minutes for each of the questions.
- First question: There are ‘n’ vertical lines and ‘m’ horizontal lines which form a grid. A number ‘l’ will be given which refers to the number of blocks eliminated from the left side of the grid formed by the two middle horizontal lines. I have to write pseudocode to get the number of squares possible from the given grid. I explained my approach and wrote the code.
- Second question: A set of co-ordinates was given on a 2D plane which is actually the locations of some cities. I was asked to design the shortest path between a source city and a destination city which maps as many intermediate cities as possible but also is as optimal as possible. I’ve solved this question by modifying BFS. My approach was that at any city, I will pick the city which is closest to the straight line from the current city to the destination city. So I’ll first identify the list of adjacent cities which are in the direction of the straight line and I’ll choose the optimal one out of those. The interviewer was satisfied with my approach and I coded it completely.
Finally, I was asked if I had any questions and I asked him about the work culture and about the one thing that motivates him to go back to work every day. The round lasted for an hour. Out of 83 students, 45 were shortlisted for the next round.
The interviewer first asked me to introduce myself. He then asked me some interesting questions like 1) If I had to pick one world problem to solve, which one would I choose? 2) If there’s no such thing as coding, what job would I pick? 3) Would you rather pick an easy and less innovative project over a risky and highly innovative one etc? There was a brilliant rapport established between the interviewer and me. He seemed to be very impressed with my ideas and thoughts.
The round lasted for 20 minutes. Out of 45 students. around 25 students were selected for the final HR round.
In this round, I was asked several standard HR questions. The interviewer first asked me to explain my projects in brief. He then asked me what I know about JP Morgan. He also asked me why I applied for a software role despite being an Electronics student. This question is very important. You should convince the interviewer that you like programming over your department but also, you should maintain the honour of your department. He then asked me to explain what Investment banking is in a line or two. Finally, I was asked if I had any questions for him and I asked similar questions as in the 2nd round.
The round lasted for 15 minutes. Out of 25 students, 15 students were selected and fortunately, I was one of them. I was so elated when the results arrived and all the hard work paid off.
1. Coding skills are very important. Giving regular contests on sites like Codeforces enhances your implementation skills.
2. Thorough knowledge of Data Structures and Algorithms is important and I personally used Geeksforgeeks as this site has an exhaustive collection of concepts and articles.
3. Be honest in the interview. A slight impression that you’re lying can blow out your chances of being selected.
4. You should fully know your projects as any kind of questions can be asked.
5. When you’re asked to write a code for a question, do not jump into coding directly. First, explain your approach clearly to the interviewer and then proceed to code. If you are asked to write pseudocode, use relevant variables such as cost, distance etc. instead of x,y etc.
6. Don’t be worried that you’ll get nervous. Most of the interviewers are cool and things would get easy as the interview proceeds. A good rapport and engaging discussion matter very much in the interviews.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course. In case you are prepared, test your skills using TCS, Wipro, Amazon and Microsoft Test Serieses.