Greetings, everyone!
I am thrilled to announce that I have secured a 6-month Spring Analyst Internship at Morgan Stanley, and I'm eager to share my journey with you.
Timeline of the entire process:
- 13-09-2023: Received a mail about Morgan Stanley's recruitment drive; a minimum of 8 CGPA was required for registration.
- 17-09-2023: Online Assesment on their platform AMCAT. Details of the questions are present here.
- 20-09-2023: Shortlist for the interview was announced. The interview took place at the placement office, with an 8.5 CGPA cutoff. Among 22 shortlisted students, I was fortunate to be one of them.
- 21-09-2023: Next day after the shortlist was announced. The interviews, consisting of 3 rounds, were conducted.
- 13-11-2023: Offer letter received🎉
All the interviews concluded by around 7:30 pm, and I was the last candidate to leave. The final list of selected candidates was announced at 8:47 pm on the same day.
Interview Experience
The interview comprised three rounds - Technical (R1), System Design (R2), and Managerial/HR. Interviews started at around 9 am, and around 5-6 interviewers were present.
Round 1 — 1 hr 15 min
I was called first for the interview among other students. My interviewer was a vice-president at Morgan Stanley, Viraj Badekar. I remember during the PPT where he gave a gist about the work culture and other benefits given to the employees. First round was about testing the technical knowledge and problem solving skills of the candidate. Initially I took around 5 mins to get adjusted as a senior person was sitting right in-front of me.
The interviewer asked a lot of questions from CS fundamentals. I have listed some of them below,
Questions asked in R1
- Find
pow(x, y)
in both iterative and recursive way. We had to code using only C/C++. After giving the solution, many follow up questions were asked like where the function calls are stored? What happens if the base condition is not given in recursion? What happens if provide extremely large numbers as an input? What are the entries present in Activation Record? - OOPS question — based on virtual keyword in C++, function overloading and polymorphism example.
- A real world problem statement was given — Suppose we have metro stations in Bengaluru, green and purple line. How will you model this problem? Which data structure will you use to store the information? Follow up — Find the intersection point of both these lines. The problem was similar to intersection-of-two-linked-list on leetcode.
- Suppose we have big text file
sample.txt
, the size of file is around 10MB. How will you find the frequency of each word in the text file? Which data structure can we use?
filename= ""
freq = {} # hashmap - in C++ unordered_map is preferred
""" Also explained about the different modes(r, w, a, r+, a+, etc) """
with open(filename, "r") as f:
line = f.readline()
words = line.split(" ")
for word in words:
freq[word] += 1
Follow up — If the file is present in TB's or PB's what to do in that case? I said we can make use of Apache Spark or MapReduce to process the data spread across multiple nodes.
- OS — Suppose we have a game whose memory requirement is 200MB and the RAM we have is only 100MB. Is it possible to run the game? Follow up — What are pages? Where are they stored? Who does the conversion from Logical to Physical Addressing? What are segments? Performance of pages and segments etc.
Apart from these, he asked about projects which I mentioned in my résumé.
Round 2 — 1 hr 15 min
Since I had my BigData project mentioned in my résumé — Yet Another Kafka. We spent around 30-40mins discussing about the architecture of Kafka. How my implementation is different from Apache's Kafka? The interviewer asked me to explain each component in great detail without sparing any details.
After project discussion, I was asked to design Food Ordering System
something like Swiggy/Zomato. We were expected to come with ER diagram, relational diagram with proper keys and correct relations. After this we had to make the Class diagram. Basically High level diagram(HLD) to Low Level Design(LLD) keeping the design principles in mind.
HR Round — 1hr
In my case the interviewer was Rajiv MG, who was a part of Morgan Stanley for about 5 years. He started by briefing about the benefits given to the employees and explaining what the role was about. After this, we had a long discussion about future plans, career, interests, projects, etc. What do I do during weekends? Later, some behavioural-type of questions.
Results 🎉
In the end, 8 people were selected(4 for FTE + Internshipt, 4 for only Internship). I was offered with 6 months spring internship.
On November 13, 2023 I received my official joining letter.
Conclusion
I'm thrilled about the upcoming Morgan Stanley internship, I eagerly anticipate diving into challenging projects, absorbing new knowledge, and forging connections with dynamic individuals in the tech realm. Looking forward to this exciting chapter ahead!