Name: Anon
College : Tier 1 college in Mumbai
Morgan Stanley Placement Experience (4th and 5th July 2014)
Day 1: 4th July
Aptitude Test: Contained 30 questions in 45 minutes. 10 quant questions and 20 questions on language of choice (C/C++/Java).
Coding round: Contained 3 programs, to be written in the language chosen in the last round. It was conducted on HackerEarth.
Q1: Print the date of last Friday in the given month of the given year.
Q2: Check if the string has balanced parentheses.
Q3: Given integer N, print N x N matrix in spiral form.
Day 2: 5th July
First there was a pre-placement talk in which they briefed about the company, salary, nature of the work and work culture.
Then they announced names of 20 students to be interviewed on that day.
Technical Interview: Two people interviewed one person. Lasted 30 mins – 1 hour, depending on the interviewers and the person being interviewed.
First a guy asked me my favorite language, I said C++. Then he asked why C++, so I answered it’s fast compared to Java and has OOP features which are not there in C. Then he asked me the basic concepts of C++ – Polymorphism, Abstraction, Inheritance and Encapsulation; and also asked to briefly explain them. Then he showed me a plastic water bottle, and told to explain the same concepts w.r.t. the bottle.
Then he asked me to write a recursive code to reverse a singly linked list. My code had some redundancy and/or mistakes, so they asked me to explain and improve my code.
Then a lady asked me to write a code to reverse the words in the given string. i.e. “This is a string” -> “string a is This”. I wrote a simple C++ code, which he then asked me to improve. I was struggling to answer it, when the guy asked me whether I knew about library functions like split. I said I thought I was not supposed to use in-built functions; otherwise the task would have been too easy. Then he asked me whether I knew how split function internally works, and whether I knew what tokenization is, I said I don’t know to both of the questions.
After that he asked me to explain the working of wait(), notify(), notifyAll() and sleep() functions.
He gave me a sample Java Program, in which Parent class had a static void print() method, and a Child class derived from it had void print() method. He asked me whether this is allowed in Java. He then wrote a code:
Parent p = new Child();
p.print();
Then he asked whether this will work, and what this concept is called. I answered run time polymorphism to which he agreed and added that it is also called Late Binding.
The lady asked me about difference between process and thread, and multiprocessing and multithreading.
Then both of them asked me about virtual memory, paging, segmentation etc. He also asked me if he had only two pages which are being required again and again, then what is the best paging policy.
After that, the lady asked me why I had not written the spiral matrix code, to which I answered that I had tried it at home, but I knew I wouldn’t be able to think and write it again in such a short time. So she asked me to explain the logic that I had used. I explained the logic that I divided matrix in 4 parts using two diagonals. Then depending on conditions on the indices (i, j), I would determine which arm of the spiral it is; and then by index manipulation I would calculate the number at that point. It seemed that they were not sure of my solution. They asked me the complexity of the solution, I said it was O(n^2), because each element is calculated in constant time.
After first round they selected 10 students out of 20.
Group Activity: We were divided into 2 groups, each of 5 people. Then we were given a Lego set, and were told to build and market a structure in 40 minutes that can attract large number of clients. After 20 minutes, the two groups were told to combine, and build something together. After 40 mins, we had to give a presentation and answer the questions from all of the interviewers.
HR/Technical Round: One person interviewed one person. Lasted about 20-30 minutes.
A guy commented in the beginning that I didn’t participate much in the group activity; so I explained him the task I was doing (I was working on presentation). Then he asked me to tell me about myself for about 2-3 minutes.
Then he proceeded with standard HR questions like why should we hire you, where do you see yourself in next 2-3 years etc.
He also asked me to tell about a project from my resume, which was an android app.
Then he told me to draw a class diagram for restaurant management system. I drew 4 classes – Customer, Order, Item and Table. Then he hinted and guided me for changing the variables in the class, to better model the scenario. Then he told me to design a database based on the class diagram, and he also helped a bit in that. Then he told me to write an SQL query to fetch name of the customer who has given the hotel the largest revenue in the last month. I was completely clueless about this, so he told me to go step by step and helped me on each step.
Technical Round: One person interviewed one person. Lasted about 20-30 minutes.
A lady asked me about caching, and then told me to explain LRU caching. Then she told me to write a C++ code to design an LRU cache which has infinite stream of integers and cache size is 5.
She asked me to draw class diagram for Elevator Management System in a building, which should be flexible for a building with any number of floors and any number of elevators.
Then she asked me an open ended question – Suppose you are head of Bus Transport System in Mumbai and you want to order some buses. What information would you require to decide the number of buses? What information for creating new bus routes?
Then she gave me a couple of puzzles. She told me to divide an equilateral triangle in 5 triangles of equal area. I was unnecessarily thinking a lot; but she hinted me by asking whether I knew how to divide a segment in 5 equal parts. Then I immediately arrived at the solution. Another puzzle was finding the missing integer from 1-100, if 99 numbers are given.
Then she asked me whether I had any questions. I asked her a couple of general questions about Morgan Stanley.
HR Round: One person interviewed one person. Lasted about 20 minutes. This interview round was only for 4 students, all were finally shortlisted after this round.
A guy asked me again same HR questions from previous round; and again commented about my inactivity in the group activity. Then he asked me why my confidence level is so low and what have I done to improve it. Then he asked me about my friends, social interaction etc. He also asked whether I have given any presentation in the past. He asked whether I could give a presentation in front of all interviewers for about 2 minutes on any technology of my choice, say Android. I said yes, so he told me that I can wait and he will call me in 2 minutes. Afterwards, I asked another lady that I was supposed to give the presentation, so she said it was not required.
After 20-30 minutes, at around 7 PM, they announced the result that they had chosen 4 students – 1 from Comps, 1 from Electronics and 2 from M. Tech.