This posting details a candidate´s viewpoint and advice on interviewing with Microsoft. Our guest poster, Joe, has further recorded his insights on his recently relaunched blog My Technical Interview Experience.
In Part I, Joe wrote, "Now that I’ve been through the Microsoft interview (and many just like it), I’m here to present you with what I wished I had: a comprehensive study guide that specifically tells you how to prepare for your recent college graduate / intern SDE or SDET interview at Microsoft."
The following is the second half of Joe’s study guide:
During the Microsoft interview, you should expect to receive questions that test your knowledge on basic computer science concepts. For instance, you might be asked to talk about the difference between Java and C++, or you might be asked to explain what a hash table is. Below, I’ve listed some topics that are important to review in order to be prepared for these types of questions (be sure to know the space and time complexities for algorithms and operations on data structures):
Binary Search Trees
*Open Address Hashing
*Singly Linked Lists
*Doubly Linked Lists
*Circular Linked Lists
Object Oriented Programming
*Four Main Principles:
*C++ vs. Java
*C++ vs. C
*Arrays vs. Linked Lists
*Hash Tables vs. Binary Search Trees
*Stack Memory vs. Dynamic Memory vs. Static Memory
*What’s your favorite piece of software?
*For SDE’s: How would you improve it?
*For SDET’s: How would you test it?
Arguably the most important aspect of the Microsoft interview, coding questions will put you on the spot and fully test your technical mettle. Both SDE and SDET candidates will receive tough algorithmic questions and SDET candidates will also be required to develop test cases for their solutions. I highly recommend using the book Programming Interviews Exposed to prepare for these types of questions. Two out of the three coding questions I received during my Microsoft interview came from this book. Plus, for countless other interviews I had with companies that were similar to Microsoft, I received many questions from this book. So, to prepare for coding questions, I recommend that you:
• Complete all or as many as possible of the 17 coding questions in Programming Interviews Exposed (chapters 3-6 in the 1st edition and chapters 4-7 in the 2nd edition).