We interviewed Prashanth Mohan, a Ph.D. student at University of California, Berkeley about his time at Microsoft Research (MSR) and some of the things you should keep in mind when trying to crack the Microsoft Research interview process.
I graduated from College of Engineering Guindy, Chennai with a B.E. in Computer Science. I went on to work for a couple of years at Microsoft Research (MSR) and then moved on to Amazon for a brief period. I am currently pursuing my Ph.D. at University of California, Berkeley on how to improve energy in data centers, buildings using IT.
The recruiting style of MSR is a little different compared to other companies. They do their head-hunting mostly by word-of-mouth (or) referrals. Generally, MSR employees refer other people.
If you are a student, you have an excellent internship program – one of the best in the country! You can head over to MSR’s site and directly apply to the group he/she is interested in. They generally won’t advertise a lot and the onus is on you. You can find more details here.
I don’t think it’s essential to have a publication before you apply, however having one definitely helps. When I was in college, I did not use the opportunity to contact my professors for interesting projects. I strongly urge the students to work with their professors on solving big problems. It definitely helps! They generally don’t focus much on your CGPA, however, having a healthy CGPA is always good!
Yes, the interview process is pretty unconventional. You will be asked to talk about your project for an hour and people would then question you on that. Everyone in the group you apply to, no matter how senior/junior they are would interview you. There would be typically 8-10 interviews before you get into the company.
The questions would mostly be open-ended ones. For eg; what are the problems associated when 2 servers communicate with each other? There is typically nothing like a wrong answer to a question, even a sub-optimal answer would work fine. But, the important thing to concentrate is on how well you can articulate and provide a robust design to the problem.
Yes! There will be software developers who will focus on Data Structures, Algorithms. There will be typically 1-2 interviews focusing on these areas. It’s a must that you possess good coding skills since once you get in, you would be required to frame a prototype of what you have done.
I would suggest going through the recent papers/publications in the area in which he/she is applying to. Brush up your basics about the group and have a good night sleep before the interview.
During the interview, try to start off with a large picture and grab the hints given by the interviewer and keep narrowing the scope down and nail the problem! Most importantly, it is important you tell the interviewer that you don’t know the answer to a particular question if you really don’t know – you would be interacting with Ph.D.’s from top universities!
The work environment is quite different compared to what you would see in other MNC’s. You would generally read a lot of publications, identifying the problems in it (or) find ways of making it better. The workload increases multi-fold before the publication deadline.
The work is very exciting as you get an opportunity to come up with a technology that can change the world and make people’s lives better. However, the atmosphere as such is pretty informal in spite of a lot of geeks around!. You get to refer everyone by their first name including the director!
Thank you so much, Prashanth for taking time for this interview. I am sure a lot of candidates will benefit from the information!