Monday, December 8, 2008

Interview Review #1: Microsoft

It has been a couple of weeks since I last blogged but I thought now is a good time to write about my last few months of interviews and my take on the current new grad situation. With the current economic situation, I didn't want to tempt fate by writing about my interviews until I found myself in stable ground. I guess this entry is just an outline of the numerous questions i've encountered in the last 3 months from various companies and positions. So i'm going to start with one interview review per day. This is by no means expert testimony. This is just how things happened for me and an expression of whatever little I know or make sense of the interview process. It's certainly not advice.. but perhaps an example or a case study.. The first review will be from Microsoft. I haven't actually done the second round interview yet, so this is just an outline of the initial screen.

Microsoft
1) Write code to determine the second last element in a linked list.
Ans: have two pointers one incrementing before the other and when one gets to the tail, return the element pointed to by the other.

2) Write code to determine is a linked list is cyclic.
Ans: Again, have two pointers, one incrementing by 2, and the other incrementing by 1. If the first pointer and second pointer point to the same element at any point after the initial increment, the list is cyclic.

3) If you could design an alarm clock, what features would you add and why?
Ans: Very subjective. I obviously included a snooze button, a USB interface for loading custom music instead of *beep beep* and a laser pointed to the ceiling to show time and make humans even lazier. (i.e, u don't even need to turn your head to look at the clock on your table)

4) What is one piece of software you really like?
My Answer: "If i have to pick a microsoft product..."
Interviewer: "It doesn't have to be a microsoft product. It can be any piece of software"
My Answer: "Google Search"
Interviewer: "Ooh.. wrong answer.. not because we're microsoft but because my follow up question is 'How would you make it better?' "

Don't fall into this trap the way I did. Don't pick a software that is obviously leaps and bounds superior to competition. I eventually gave an answer along the lines that Google Search needs category based searches. For example, search only medical website, or college websites.

Let it be said that my answers were good enough to get me to the second round. The key is to relate and communicate with the interviewer. Don't be uptight but don't be too loose either. It's about finding the balance and the comfort zone. The interviewer isn't your homeboy, but they're not there to kill you either. They are genuinely interested in hiring you, otherwise they wouldn't be there so be confident but not self-obsessed. Understand that there are people out there who know more than you but you have what it takes. The whole package.. Finally, never forget to think outside the box. As crazy as some of the ideas my sound, it may show the interviewer that you have creative potential. An alarm clock with a laser and USB interface is not new, but it's not common. The common answers will put you on par with the other one hundred candidates. The unique answer puts you ahead of them.

Tomorrow i'll cover another interview that I attended while it is still fresh in my mind.

1 comment:

Avinash said...

One feature i would not include in an alarm is snooze... but thats just me. :)

The act of having to reset the alarm to a new time actually makes sure that i don't go back to deep sleep ;)