Skip to content
Related Articles

Related Articles

Morgan Stanley Interview Experience for Internship (On-Campus) 2022

View Discussion
Improve Article
Save Article
Like Article
  • Difficulty Level : Medium
  • Last Updated : 10 Feb, 2022

Morgan Stanley visited my college for a 2-month internship for 3rd-year students. The criteria for applying was:

  • No live backlogs
  • Streams – CSE / ETRX / EXTC / IT / MECH

My college internship cell had specified that not all students who apply will sit for the online test. Morgan Stanley will shortlist students on their side. Approximately 250 students were allowed to sit for the online test.

Round 1: Online test

The test was conducted on 31st January. The test had 3 sections:

Aptitude questions (10Q, 20 min): These were fairly straightforward questions that could be solved using basic Linear Algebra, Arithmetic Progression, etc. Some of the questions involved data interpretation. The key to saving time in these types of questions is to read the question before trying to piece together the data; to know the general direction in which your interpretation of the data should be heading. I was able to attempt all of the questions.

Debugging questions (7Q, 20 min): In this section, some code was already present for each question having some syntactical/ logical error, which we needed to correct. Before the round started, we were asked to select the programming language in which we would like to solve the questions. As far as I can recall the choices were C++, Java, and one other language which I can’t remember. I had chosen C++. Due to the time constraint, I could only solve 6/7 questions, with all the test cases passing in each of the 6 Questions.

Coding questions (3Q, 60 min):

The questions were:

  1. Given a binary string, in an iteration, we can either remove consecutive 1s or consecutive 0s. Find the minimum number of iterations required to empty a string. Ex: “00101100”->”0011100”->”0000”->””
  2. Boxes numbered 1 to N are placed in a row sequentially. A robot is given a list of orders with a starting and ending index, and the robot has to retrieve all of those boxes. If two orders are overlapping then they will be merged into a single order(ex: (5,9) & (7, 11)->(5,11)). What is the minimum number of orders that the robot has to process?
  3. We input a 2-dimensional matrix having the costs of N categories and M product types. We need to select exactly 1 product from each category. We cannot choose the products in the same columns for consecutive rows. How can this be achieved with a minimum cost? Ex: {{*2*, 40, 50 }, {3, *40*, 50}, {*4*, 40, 50}}. Ans = 2+40+4

I was able to solve the second and the third question. The results were declared on 2nd February and 7/250 students were shortlisted for further assessment.

The interview rounds were scheduled for 4th February.

Round 2: Technical Interview

The round started at 9 am with the interviewer asking for my introduction. Then I was asked to share my screen and open word/ notepad for writing code. I was given the question that I needed to write code to design the schedule of a tournament of 10 teams such that each team plays with every team exactly once and no team has to play a match on consecutive days. I started coding it, and I was a little confused about the question. So I told the interviewer that right now I am not able to think of an optimized solution so I’ll start with a brute force approach. He said that is completely fine. I coded an O(n^3) solution and then reduced it to O(n^2). The key here is to constantly interact with the interviewer and let them know what you are thinking at each step. At one point I was moving towards an incorrect solution, and the interviewer nudged me in the right direction.

Then I was asked two design questions: one for designing an elevator. We had a long discussion about what would be the correct data structure for this. I was making a case for priority queues, but the interviewer was able to convince me that doubly ended queues would be better. The second design question was on designing an e-commerce website for selling pens. We had a discussion on various OOPs concepts like inheritance, the difference between IS-A and HAS-A relationship. At one point I started moving towards how we can implement a recommendation system into this. But the interviewer asked me to keep the design simple.

Next, I was asked how would I design a program to detect and remove repetition of words in a text file that is larger than the memory size of my laptop.

The interviewer then asked me if I have studied SQL. I said yes, but it is not one of my strongest topics. So he didn’t ask me any questions about it. Then he asked me if OS is fine, I said yes. So we discussed a numerical on solving process scheduling using various approaches.

The interviewer concluded the interview by asking me if I had any questions for him. I asked him how is ML used in Morgan Stanley and how is working in finance different from working in a big tech company. The round went on for approximately 50 min.

4/7 students were selected for the next round.

Round 3: Technical+HR

This round started at 6:15 pm on the same day. The interviewer asked for my introduction and went through my resume. He asked me about the work I had done in my previous technical internships. I had mentioned about CNNs on my resume, so he asked me how would you calculate the time for training a neural network. I said that I’ll take a subset of the dataset and then extrapolate the results. He asked me if this can be approached from an algorithmic point of view. At this point, I was totally clueless about this. He asked me the time complexity of matrix multiplication and asked me to explain how a neural network works by giving me some hints. Although I was able to answer both these questions, I still didn’t understand how I could solve them, so after trying for 10-15 min I said that I don’t know how to do this at all. He moved on and asked me to sort a text file much larger than the memory of my laptop. I was able to answer this satisfactorily.

  1. Then I was asked various HR-related questions:
  2. How is working in a team different than working individually?
  3. How would you handle disagreements in a team?
  4. What if someone in your team is slacking off?
  5. Have you ever been in a situation where you saw ethics being violated? How did you handle this situation?
  6. I was asked to share an anecdote relevant to each question.

The interviewer asked me if I had any questions for him. I asked him that if I am selected for this internship, what would you suggest me to study before joining and how is working for a finance company is different from working in a big tech company. He then told me the work he was currently doing, so I asked a few cross-questions on that work. The interviewer lasted about 35-40 min.

I got an email from my internship cell on 8th Feb informing us that I along with 2 other students have been selected for the internship.

A few tips for the interview:

  • Communicate your ideas clearly and freely. The interviewers are here to evaluate your ability in a team where you would be expected to communicate with others.
  • No matter what situation arises in the interview remain confident. We can’t expect the interviewer to have faith in our abilities if we can’t demonstrate faith in our own abilities.
  • Read dozens of past interview experiences. Some of the questions do get repeated.
  • It’s fine if you are not able to give the right answers to some questions. Approaching the question correctly also says a lot about your skillset and your problem-solving attitude.
  • Lastly don’t bluff in resume or interview. If you don’t know about something, politely let the interviewer know.  
My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!