Open In App

Microsoft Interview Experience FOR Summer Internship (On-campus)

Last Updated : 23 Aug, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

The hiring process consisted of 3 rounds:

Coding Round:

1st Question: There is an array A of N integers. Divide them into three non-empty groups. In each group, we calculate the difference between the largest and smallest integer. Our goal is to make the maximum of these differences as small as possible.

2nd Question: There are N segments numbered from 0 to n-1, length of kth segment is A[k]. segments can be merged to create longer length. What is the largest square you can build using those segments?

The questions were the same for everyone and a total of 35 students were shortlisted out of 250+ students.

Interview Round 1:

35 people made it to this round. This round lasted about 55 minutes.

The interviewer asked me to begin by introducing myself. Once I was done he asked me if I was aware of sorting algorithms. I told him the names of certain algorithms with time complexity O(n^2) and their approaches. He asked me for optimal algorithms where I explained the divide and conquer algorithms including their time complexities.

He then asked me to present my screen and write a code for finding the maximum depth of a binary tree. After solving it he asked me to modify it such that it returned the maximum depth along with the furthermost leaf node. The interviewer assessed and told me that my code was correct and moved on to the next question. He asked me about virtual functions in OOPs. Then he asked me if I was familiar with linked lists, given a linked list, I were to print alternate nodes. I told him one approach using an auxiliary vector and then the optimised approach. He then asked me if I could delete a given node from a linked list considering the head node pointer is given as well as a case where it wasn’t. After explaining to him both the solutions he asked me one last question to find the middle node of a linked list, and write a code for the same. I explained two approaches and he seemed quite satisfied.

In the end when I was asked if I had anything to say I discussed with him an HR question relating to work expectations from an intern. After that I went on to say that it was one of my first interview experiences and that I was quite nervous. He seemed happy and told me that I actually did quite well. He told me to wait for a couple of minutes until I was called for an HR round.

Interview Round 2:

An hour after the first round I was called for the second one. This round lasted about 45 minutes. The interviewer was quite friendly and he asked me about how my previous rounds had gone. He began by asking me about my project and my contribution to it. Since it was a hackathon project he asked me the current status and future aspects about the project.

Then he asked me about my favourite subjects to which I said OOPs and DSA. He asked me about fundamental differences and benefits between a binary search algorithm and linear search and how gravely they differ whether in terms of data structures or algorithms. I explained to him from the very basics. He was content and repeated after me. It was more or less a discussion beyond this about time complexities, data structures with upper hand in time complexities, asymptotic analysis and what is their need in real life.

After this he asked if I had studied COA. He gave me a task to present my screen and create a virtual processor encompassing all components of a real life processor like ALU, MMU, registers etc. and make it with the help of Object oriented concepts. I was not expecting it so I asked and clarified myself whether I was expected to make a class which encapsulated all elements of a processor. He was affirmative and I proceeded to write a piece of code. He did not want me to complete it, however we discussed each component and its preferred data type as we went along and he explained how real life examples such as this can also be implemented using OOPs. I agreed and then he asked me to stop presenting and asked if I had any questions for him. 

Results were announced later that evening. 9 people were selected and I was fortunate to be one of them!

Tips:

  1. Stay calm and composed throughout the interview. Consider it as an intellectual conversation between two people.
  2. If you are stuck, do not hesitate to ask questions and conditions, explain your perspective of exactly where you might need help and what you are looking out for.
  3. If you get a chance to explain anything, make sure you show them that you really visualise what you are speaking and be confident and articulate about it.

#Microsoft #internship #interview #college #SWE #summerinternship #interviewexperience #tips


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads