I applied on the careers page without any referral. There were 3 Rounds. The First Round was the Online Coding Challenge followed by 2 Online Virtual Interviews over Zoom Call where we had to present our screen, and we had to code in either notepad or any text editor.
Coding round(1 hr 45 min):
- Section 1: Aptitude Section which had 10 questions to be solved in 20 mins. The difficulty level of the questions was easy to moderate.
- Section 2: 7 Debugging questions and time to solve was 20 mins. One can choose any programming language for debugging and the section was quite easy and one has a basic understanding of programming that can easily debug the questions.
- Section 3: This was the coding question having 3 Programming questions and the difficulty level of the program was medium to hard level. The time to solve 3 questions was 45 minutes
I was able to solve all 3 coding questions and around 7-9 aptitude(which I think was correct) and 5 debug questions. There were cutoffs for individual sections.
Technical Interview over zoom (60-70 min): The interview started with the basic understanding of OOPS, and some terminologies related to it like, What is OOPS and it’s a pillar? I answered him by giving some examples. He was satisfied with my answer then he asked me to share my screen.
- Find the maximum sum leaf to root path in a Binary Tree I discussed the brute force approach, he then asked me to optimize it. I finally managed to do in its linear time complexity.
- The maximum sum of nodes in a Binary tree such that no two are adjacent I had done this question previously and could recall the approach, so I directly went forward with the optimized solution.
Then he asked me about the basic principles of hashing and some theoretical questions related to it like linear probing, quadratic probing, collision. Then he gave me a question,
- You are given an 8*8 matrix and the starting position is 2,3 and you can move anywhere in the matrix for example (from 2,3 you can move 5,2 or 8,3 anywhere in the matrix) such that you can visit one cell for one time only and it is compulsory to visit all cell at once. So every time you run the code the order should be random and you have to print that order.
I started with a brute force approach which in the worst case can lead to an infinite loop. Afterward, I optimized it to O(N2) sol. He was happy with my solution. Then he asked whether I had any questions for him and I asked what prior knowledge do you expect from us before joining as an intern.
HR + Technical interview over zoom (60 min): He started with questions about me.
- Tell me about yourself
- Your motivation toward computer science?
- What inspired you to be here?
- A brief overview of your projects
- Why Morgan Stanley?
- What if you are not selected?
And then he asked me 1 coding question similar to the rotten orange problem Minimum time required to rot all oranges.
Then he asked whether I had any questions for him and I asked him about the work-life balance at Morgan Stanley and what projects we could be assigned to me.
Result: SELECTED, declared after 3 weeks from 2nd interview round.