Microsoft interview study guide: Part II of II

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:

Knowledge Questions
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):

Arrays
*Definition
Binary Search Trees
*Definition
*Insertion
*Deletion
*Minimum
*Maximum
*Search
*Successor
*Predecessor

Hash Tables
*Definition
*Hash Function
*Chain Hashing
*Open Address Hashing

Linked Lists
*Definition
*Singly Linked Lists
      *Add Head
      *Remove Head
      *Insertion 
      *Deletion
      *Traversal
*Doubly Linked Lists
*Circular Linked Lists

Queues
*Definition

Sorting Algorithms
*Quick Sort
*Merge Sort
*Selection Sort
*Insertion Sort

Search Algorithms
*Linear Search
*Binary Search

Stacks
*Definition

Object Oriented Programming
*Definition
*Advantages
*Four Main Principles:
      *Inheritance
      *Polymorphism
      *Abstraction
      *Encapsulation

Comparisons
*C++ vs. Java
*C++ vs. C
*Arrays vs. Linked Lists
*Hash Tables vs. Binary Search Trees
*Stack Memory vs. Dynamic Memory vs. Static Memory

Miscellaneous
*What’s your favorite piece of software?
      *For SDE’s: How would you improve it?
      *For SDET’s: How would you test it?

Coding Questions
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). 

Work at Microsoft!

3 Comments

  • وظائف said:

    thank's it's useful information ,hopefully I can be one of the microsoft staff

  • David said:

    Good post, however, I think, In Microsoft, there is no fixed interview process or format. It changes with product groups or teams.

  • Feel the Bliss said:

    Hi,

    This and the part 1 of it are great posts. I have cleared my phone interview and was getting all set to prepare for the on-site interview and this came at the right time. These were the things that were in my mind too, however, won't we have questions on algorithms, or testing our technical knowledge on our coursework/worked technologies/databases etc too ? Apart from Programming Interviews Exposed, I have heard Programming Pearls by Bentley is also a strongly recommended book for Microsoft Interviews.

    Thanks for the time !

    - Feel the Bliss !

Comments have been disabled for this content.