So this week suddenly becomes super busy for me. I’m performing for Extravaganza this weekend so practice has been pretty stressful. I also have a paper due on Monday and this writing class has been so tough for me. The paper is about Theories of Religion and apparently they use really old English with complicated sentence structure.
But anyway I’m gonna dedicate this post to describe how challenging and stressful technical interviews are. In case you don’t know, there’re technical and behavioral interviews. Behavioral interviews are the types of questions like: “What’s your greatest failure?” or “Tell me about an experience that you blah blah”. I believe that type is more for like consultant, business analyst and such. However the point is, you can b.s to a certain degree.
Technical interviews, on the other hand, are challenging and stressful. It can be open-ended, but most of the time it’s not. BTW I’m kinda talking about CS specifically. Technical questions are more stressful cause I guarantee if you can’t answer it, you’ll feel sooo bad that you just wanna kill yourself and of course the awkward silence would kick in.
A typical Software Engineering recruiting process is like this: in order to get in Microsoft, you’ll need around 8 interviews. Same with Google. Smaller companies typically have around 2 – 3 phone screen and on-site full-day 3-4 interviews. I went to both Microsoft and Google and both were super hard. Take Microsoft for example:
1. Pre-screen interview 1: I talked to a Microsoft PM at SHPE Conference. She went over my resume, asked a few basic questions on my projects and bam!!! “What’s the different between Linked List and Array?” After that was a series of 2 – 3 more basic technical questions that you learned from CS103 but pretty much rarely use them later on.
2. Pre-screen interview 2: After that conversation I was asked for an interview right at the conference at around 3:00p.m so I had like 2 hrs to do w/e I wanna do. Of course the interview would be all technical as well. Pretty much algorithms, data structures and optimization stuff. You have to solve problem right there and HAND-CODE your solutions.
3. Phone Screen Interview 1: I guess I did well so I was scheduled for a phone screen where they you Windows Live Meeting so that you can LIVE-CODE your solutions and they’ll verify it right then and there. You also have to TALK WHILE CODING, explaining your algorithms, tell them about design trade-offs that you make, compare runtime of data structures you choose. Everything counts and the interviewer won’t tell you ur wrong even if you are. They expect you to figure out yourself.
4. Phone Screen Interview 2: Similar settings with harder questions and problems. If you do well you’ll get flown to Redmond, WA for on-site interview.
5. On-site Interview 1: Now Microsoft is HUGE… literally. I think they spend approximately $1500 on each candidate including flights and hotels. I was in Hilton Bellevue for 2 nights and each night costs around $350. Flight ticket was around $350 round-trip. Food and everything else will get reimbursed. They DO know how to treat candidates really nicely.
Anyway, my 1st on-site interview was with Bing search team and he was asking me about SQL, which I was not so strong at since I was in charge more of the front end for my webapp. The interviewer kept pushing you beyond your limit so that they can assess your skills accurately. The questions were hard and the setting was stressful.
6. Lunch Interview: I had lunch with another guy from the same team. We ate for like 15 minutes and the rest was hard-core “discussing” about low-level Java language and all that.
7. On-site Interview 2: It was a brainteaser/puzzle that I didn’t know how to answer. He tried to give me hints but there was a trick that he refused to tell me and if you know the trick it’s done. Needless to say that was bad.
8. Final On-site Interview: The interviewer asked me a small question to code while he’s reading my resume. Apparently he was not very well-prepared. Then he asked me a question about partitioning the Earth and locating the closest gas station to his house while maintaining latency and such. It was an open-ended question which he said I did fine, but made a stupid mistake on the earlier easier one.
The interviewers also keep track of what others have asked so they won’t ask the same thing. Overall very stressful but worthy experience cause I did learn something. The hotel and city were very nice, definitely a good place to work in. Alright so that was my experience with Microsoft interviews. Tell me about urs!! Have fun and keep on rolling!