I applied for Microsoft Off Campus Internship through mettl.com. Minimum CGPA was 7 and no backlogs were allowed.
Coding Round( ONLINE )
It was an online coding test which had three questions and 90 mins were allotted for it. Different people got different sets of questions.
1) https://www.geeksforgeeks.org/find-total-number-of-distinct-years-from-a-string/
2) https://www.geeksforgeeks.org/rearrange-odd-and-even-values-in-alternate-fashion-in-ascending-order/
3) https://stackoverflow.com/questions/52775518/number-of-buses-originating-from-a-bus-stop-a-computer-program
I solved all the 3 problems. The result was announced after 20 days and I was qualified. After some days I got my interview details.
Round 0(FLY ROUND):Â
This was a pen-paper based round and in this round almost 160 students participated from different institutes of India. 2 questions were asked and they gave us 60 minutes to solve. The problems were :-
1)https://www.geeksforgeeks.org/a-linked-list-with-next-and-arbit-pointer/
2)https://www.geeksforgeeks.org/reverse-alternate-levels-binary-tree/
Only 20 students were selected for the next round. I was one among them.
Note:- If you have enough time left then write comments and explain your approach . Also variable names should be self explanatory for better understanding.
Round 1(Technical):Â
It was a f2f interview and the interviewer was very nice and friendly. First he brought my fly round paper and asked how can I improve my solutions. Then he asked me these problems:-
https://www.geeksforgeeks.org/expression-evaluation/
https://www.geeksforgeeks.org/program-print-substrings-given-string/
As a modification to the second problem he asked me how will I find the longest repeated sub-string within the same string in which the characters can overlap.
After that he asked me:- Given two tables A and B ( in SQL ) how can I print only those rows which are present in A and not in B without using multiple select statement ( Note that due to this restriction we cannot use the MINUS operator ). I gave him a solution which uses JOIN function in SQL but it was incomplete. After his help I was able to solve it completely. Then he asked me a question in Computer Networks and i told him that I am not good in this topic and he moved on . He then asked me whether I have any questions for him. I asked 2-3 questions and then the interview came to an end.
I was waiting outside when I was informed about the whereabouts of my 2nd interview.
Round 2(Technical):
The interviewer first asked me about my college which was followed by 1-2 minute of general talks. After that he gave me a question and asked me to write the code.The question was:-
Given n locations/directories of a file print the directory in the order such that the parent directory comes before the child directory. For example a directory is “a/” and the second directory is “a/b/c/” so “a/” is the parent directory of “a/b/c” because to reach “a/b/c” we first need to reach “a/”.
Example:-
Input :- 1) a/
2) a/b/c
3) d/
4) d/e
Output :-
The input is already given in the sorted format and can be printed as it is. One more solution can be :-
1) a/
2) d/
3) a/b/c
4)d/e
I told him 3-4 approaches each time with a complexity less than the previous one. But he wanted a better solution. I finally arrived at a solution that we can just sort the strings according to their lengths and he was satisfied. He then told me to write radix sort for the same.
Although I was not confident in implementing radix sort but I tried and after taking some time I finally wrote the code. I explained my approach to him and then he told me to wait outside.
I was very nervous after this interview as I was not sure about my implementation of radix sort. But after some time I was called for the next round.
Round 3(HR) :
First he asked me to introduce myself and how were my previous interviews.The interviewer was polite. He asked me what i generally do to pass my time. Then he asked me my favorite topic in programming. I told him data structure. He asked what in data structure. I told him trees and graphs. He then asked me how will I explain to someone what is a tree who knows nothing about coding. Following that he asked me some applications of graphs. I told him maps, but he wanted another solution. He asked me how do you think Facebook works. I told him the connections between the friends is a generalization of graph data structure. Then more questions about implementation of mutual friends in Facebook followed. The interview came to an end and he asked me whether i have any questions for him. I asked him a few questions.
After some time the HR came and asked for my resume and told me that they will get in touch with me within a few days to tell me whether I was selected or not.
After almost 30 days I got a mail from them stating that I was selected. Hurrah!!!!
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
04 Apr, 2019
Like Article
Save Article