Observations from the Microsoft Interviewing Experience
Martin Cagan Netscape Communications Corporation November, 1996


As a hiring manager for over 10 years, I’ve recruited, interviewed and hired hundreds of people. As a CTO for a software company, I’ve visited literally hundreds of other software companies and been exposed to their technical staff and their company’s cultures. However, one company that I had never had inside exposure to was Microsoft. While everyone knows of Microsoft’s reputation for aggressive talent and technical prowess, few seem to know what goes on inside the Redmond campus and, most importantly, how they are able to maintain the very high quality of their staff in spite of sustained dramatic growth. Literally every other high-tech company that I had been exposed to that had experienced sustained growth has struggled to maintain high staff quality (e.g. Apple, Novell, HP, IBM, DEC, Sun, SGI). Somehow Microsoft seemed able to defy this trend and effectively establish staff quality as an ongoing competitive differentiator. When I decided I wanted to pursue the possibility of working for Netscape, I also decided to interview with Microsoft. I had three reasons for this. First, I had always considered Microsoft an excellent company and considered it prudent to discuss the opportunities with them as well. Second, I realized that with virtually any other company that I’d work for, they would in all probability be a competitor to Microsoft, and in the spirit of “know your enemy”, I figured the more I learned about Microsoft the better I would be prepared to compete

successfully against them. Third, I’ll admit to the desire to see if I could get an offer from this company with the reputation as one of the most difficult to get into. So roughly in parallel I interviewed with both Netscape and Microsoft. I won’t discuss much here about the Netscape experience, mainly because it was very conventional. It was virtually identical to the process I was trained in at HP and have used myself for years, and that I believe the vast majority of hightech companies use. In contrast, the Microsoft experience simply left me in awe of the incredible recruiting engine that they have built, and even weeks later I found myself reflecting on the experience and asking myself how I could incorporate what I learned into my own recruiting practices. The purpose of this note is to document my experiences. Note: I have also reviewed my experiences with several other people that have interviewed at Microsoft, including some that were rejected and also exMicrosoft employees. The consistency of the interview process across projects and even divisions was remarkable. While I was interviewing for a mid-level management position, others I talked to went through the process for entrylevel and for senior engineer and product manager positions.

The heart of the Microsoft recruitment process is the recruiter. Forget everything you know about high-tech recruiters. Microsoft’s are different. They are highly trained, effective, and extremely competent, and deserve a large degree of credit for Microsoft’s business success. Microsoft has four main recruitment channels:
   

University/Campus Recruiting Direct Resume Submission On-staff Headhunting Outsourced Headhunting

Microsoft only occasionally uses outsourced headhunting, typically for very specialized positions. By my very rough estimate, Microsoft has approximately 40-60 full-time, onstaff, recruiters. These recruiters are supported by an admin staff that plays an important role in handling logistics for the candidates. They have a separate building on the campus dedicated to recruiting, with what I’d guess is approximately 100 offices. Each recruiter is assigned to a functional unit of the company. It is the recruiters job to get to know the management team of that unit, the business and technical goals of the unit, and the precise requirements


of the open positions. The recruiters are centralized so that communication and sharing can occur across projects and divisions.

Candidate’s resumes are routed to potential recruiters, and the screening process begins. The purpose of the screen is to determine if the person is a) a reasonable candidate for Microsoft in general; and b) to start the process of finding the right project for the person. As with everything about the recruitment process, the screening call is wellscripted, efficient and all-important for the candidate. The recruiter first collects considerable background information on the candidate, beyond what’s on the resume. Then the recruiter tries to narrow down the appropriate job category (e.g. developer, tester, program manager, etc.). Finally, the recruiter asks a series of increasingly probing questions. My reading from the questions was that the recruiter was interested in the actual (versus claimed) job responsibilities, the degree of imagination and creativity displayed, and overall personality and attitude. One of the questions I considered the most insightful was “Tell me about a non-computer related product that you thought was an outstanding product”, and the follow-up of course was to explain why you thought it was such a great product. The screening calls lasted between 45 minutes and an hour. After the first screening call, I was told by the recruiter that I was someone that she wanted to move to the next stage (interviewing on site), but that she would first be working to find the right project. I was told I might get additional calls, which I did.

If the recruiter likes the candidate, the recruiter will champion the candidate’s cause throughout the company, even to recruiters from other divisions. The recruiters meet periodically (I’m guessing weekly) to present good candidates and to try and find potential matches. While I was personally recruited from an in-house recruiter, there were three different divisions that all called in order to gauge my interest in their projects, and to further screen me as to my qualifications for their open positions. I received a total of four screening calls, one of which was from a recruiting manager that had been asked to help narrow me down from two divisions to one (he was asked to determine which of the two I was the best fit for).

An extremely important point is that throughout the screening process (indeed, throughout the entire recruitment process), I was given the name and


phone number of the recruiter that “owned” my resume. Even when another recruiter would call about a position, “my” recruiter would follow-up to make sure the call happened and to make sure I was still on board and interested. Taking ownership and responsibility for candidates was something that was demonstrated to me by two different recruiters as I made my way through the process. Follow-up to my questions was virtually instant, and the recruiters always knew instantly about me and where I was in the process.

The quality of the Microsoft recruiters truly amazed me. I was exposed to four of them in total, and they were all very bright, very knowledgeable about the positions they were recruiting for -- and not just at a superficial level, very dedicated (several talked to me late into the evening), and as you’ll see later, professionally trained in negotiation.



Once a position had been identified for me, I was asked to come up to Redmond for an on-site interview. Again, everything was very smoothly orchestrated. I received a call from a recruitment admin person proposing travel times, and the next morning, by overnight FedEx, I received a several pound “Interview Package”. This glossy package was produced specifically for the recruitment organization, and contained the following:
 

Cover letter containing full itinerary Several brochures on why Microsoft is the coolest place in the world you could possibly want to work Several brochures on why Seattle is the coolest place in the world you could possibly want to live A full brochure on Microsoft benefits (which are actually very comprehensive) Several area maps Current press articles about Microsoft Job Application (to be fully completed before arriving) A limited non-disclosure form (to cover anything competitive I might learn)

   

The package arrived at my home during the day, and was promptly read by my wife, who all of the sudden became Microsoft’s biggest champion. She was


so impressed by the benefits, the company, and the area that it seemed to turn her around from initially being very wary of anything to do with Seattle to very open to the possibility of moving there. I’ve little doubt that the interview package is aimed as much at the spouse as the candidate.

The goal of the recruiter and the recruiter admin was to make my visit very comfortable, smooth and leave a great impression all the way around. After picking up my car, I was put up in a well above average, luxury class hotel (the Bellevue Club), and told to eat or drink or play as much as I wanted (at the full health and sports club) and that everything was already taken care of. In the morning, I followed my special map and drove to the Microsoft campus where I entered the Recruitment building. There, along with probably 20 other candidates, I waited while my recruiter was called out to come get me.

My recruiter brought me to her office and we talked for about a half hour about the position and the team. She made a strong effort to position herself as “my ally” and she gave me lots of advice about what the team was looking for (I believe this was intentional and in fact instructed, as this becomes important later during negotiation).

Microsoft has a large wooded campus on several thousand acres, composed of approximately 20 2-3 story high buildings. In order to transport the candidates between the various locations, Microsoft maintains a fleet of vans for this sole purpose. The vans are only for interview candidates, and the drivers have also obviously been trained to help the candidates in any way they can. (I couldn’t help but be reminded of Disneyland, where every employee is trained that they affect the overall experience, no matter what the job). I later learned that while Microsoft runs a fairly large employee shuttle service, for security reasons they don’t want non-employees riding on them.

The average interview was for one hour, and I met with six people during the day, including one over lunch in a Microsoft cafeteria. All of the people I met with were fairly senior, and when I asked if I would be meeting some more of the people that would be working for me, I was told


later by the recruiter that only people that have completed the “Interviewing at Microsoft” class were allowed to interview. It was quickly clear to me that every person I interviewed with had certainly been through a detailed training program, and that it was a very specific and explicit program, and that everything that was asked was asked for a specific reason. My reading from the interview sessions was that there were two overriding things that all interviewers were searching for: 1) My technical depth and breadth 2) My general problem solving skills Each person came at me from a different angle, and I’m fairly sure that for each that angle was assigned in advance, but each person was looking for the same sorts of things. I met with people from several levels in the organization, and with people with different technical specialties. For example, the database expert quizzed me on the database issues, and the user interface expert on user interface. The senior managers quizzed me on my knowledge of the industry and the competitive landscape. Once technical competence was established, the interview session would move to the problem solving skills. For this, the interviewer would pose some hypothetical or actual situation, and ask me how I’d solve it. Then, after I gave an answer that he liked, he’d change the rules slightly, for example, by introducing another constraint, and asking how I’d handle that. We’d continue down this path through several iterations. They were clearly looking to see if I’d get frustrated or run out of ideas or be dogmatic about one of my earlier proposed solutions. Note that, for the interviewer, this is much easier said than done. They have to know the domain enough to have realistic yet difficult scenarios. They must have thought through the scenarios in advance so that they could keep the candidate thinking and at the edge of solvability.

A friend who is an ex-Microsoft employee that had been through the Interviewer training later informed me that they are encouraged to make the interviews challenging for the candidate. They teach that making it too easy leaves a negative impression. They’re taught to start with easier questions, but then progress to difficult ones. The interview team is designed to be composed of mainly peers, with the hiring manager at the end of the day. While the recruiters are supposed to focus on personality and whether or not the person is a fit for the culture, the peers focus on technical knowledge and general problem solving skills. The formal training covers the normal legal issues of what to ask and what not to ask, but the main emphasis is on describing the “ideal Microsoft


employee”. Based on the training, the main factor to look for is “smarts”. More general guidelines are:
   

Hire for Microsoft, not just your division If the person is “just ok”, they’re probably not Make the interview challenging Look for smart, energetic, creative people with strong problem solving skills How the candidate approaches a problem is as important as the solution


Between each interview, I was told to sit tight while the previous interviewer communicated with the next interviewer. I later learned that there are two reasons for this. First, any interviewer can choose to end the interview at any time. In fact, they generally don’t give the candidate any indication of the length of the interview day. I did have a small sheet with the names, and all of the interviewers remarked that that was highly irregular, and my recruiter later said it was because I had been extensively prescreened and the hiring manager knew I would have a full day. The second reason is that the two interviewers are instructed to pass along info on any areas where there are open issues remaining in the mind of the previous interviewer. Directly after each interview, the interviewer is also instructed to send an email to the hiring manager and the recruiter, describing their evaluation of the person, and their assessment of the candidate’s job classification (see below). By the time I made it back to the recruiter at the end of the day, the recruiter already knew that the hiring manager wanted to make me an offer. She told me that I would be receiving a call the following Monday, after they’d had a chance to put together the specifics of the offer. She finished the day with a half hour in heavy sell mode, describing the wonderful benefits of working for Microsoft in the beautiful Pacific Northwest, working with the top talent in the industry, and how Microsoft would make the entire transition smooth and painless (they do have outstanding relocation benefits). She also began to lay the groundwork for an offer by explaining that I probably already knew (I did) that Microsoft does not pay the very top dollar in salary, but rather they put together an entire package of salary, bonus, stock and intangibles that they believe is the best around. As I left, my recruiter made sure I had the self-addressed, stamped envelope to put any receipts for anything I might have needed to purchase during my interview visit, and she encouraged me to take out to dinner that night a friend of mine that worked for Microsoft.


I left with images of John Grisham’s “The Firm” in my mind.

The purpose of the Microsoft interview process is to decide: 1) Is the candidate a “Microsoft Hire” quality person, for any job? 2) If the answer to #1 is positive, then is the candidate a match for the specific position he’s interviewing for? If no, the recruiter works hard to find a better match in another project. 3) If the answer to #1 and #2 is positive, then what job classification does the candidate fall into? Basically, for each type of position at Microsoft, there are job classifications that define the parameters for salary and stock. This provides a ladder for all jobs. Each interviewer gives his opinion about where the candidate is rated and this is used to determine starting salary and stock options.

In order to understand a Microsoft offer, you need to first understand the Microsoft philosophy on compensation. Microsoft is a very performance-driven culture. High levels of commitment and effort are encouraged in every way possible. Peer pressure seems to be the most effective means, but the compensation package is also very effective. The philosophy is to give a very low base salary (generally 25-40% below market), and then supplement the salary with stock and cash bonuses which are a function of performance. While many companies do this to a limited degree, this is the central theme in the Microsoft compensation package. The problem with this philosophy, of course, is that the base salary may be far out of sync with the candidate’s current salary package. So the challenge becomes finding a way to get people to take what appears to be a significant reduction in compensation. That’s why the negotiation training is so important for the recruiters. The recruiters spend literally hours explaining the intangibles of working for Microsoft, and how the long-term value of even a small number of options can have dramatic upside potential. However, for most experienced candidates, the delta is simply too big, and in order to address this, Microsoft offers a starting bonus, which is calculated to fill most of the difference between your current salary and your first year Microsoft salary.

When Microsoft presented the offer to me, I was prepared for the low offer, but I wanted to see how high Microsoft would go, partly in order to figure out


how serious they are about their compensation strategy. Given that I already had a Netscape job offer that I preferred, and I knew that the position they were offering me was a difficult one to fill, I was obviously in a good negotiating position. The recruiter presented the offer and I expressed disappointment in the numbers and said it was not likely I could afford to accept something so low (which wasn’t just posturing, it was true!). The first tactic that Microsoft used was to once again go over the various intangibles. The next tactic was to have the senior hiring manager call me to do the same thing. Having failed on both calls to get an acceptance, a couple days later I received a call from the recruiter with a counteroffer. It was explained to me that while the base salary and initial stock amounts were firm and needed to be firm, it turns out that they did have some flexibility in the starting bonus and in follow-on stock. I was offered something called a “multi-year starting bonus”, which means that the signing bonus money could be added to my base salary for at least two years, probably three if I pushed she said. And, after three months I would be granted additional stock options in order to bring the stock total more in line with the market. So, the strategy Microsoft uses does allow them to acknowledge the market to some degree when necessary, yet for the majority of the employees have a set of relatively fixed pay scales.


The interviewing process confirmed in my mind that Microsoft does indeed have the highest quality personnel of any large company in the industry, and that the recruitment process is one of the major advantages behind Microsoft’s success. I also believe that attracting and retaining the best people is absolutely essential for any company that wants to successfully transition into a successful large company. After reflecting on the Microsoft interview experience, I listed the following “lessons learned”, which I intend to incorporate into my own existing recruitment practices: 1) Never underestimate the importance and value of the recruiter. Make sure these people are properly trained, and that they understand their dramatic and direct importance to the company. Make sure that they take ownership for the candidate, and that they are aware of their impact on the overall impression the candidate gets of the company. Make sure that they are treated as the critical member of the product team that they are. 2) Train each interviewer carefully on how to probe and assess the talent, problem solving skills and attitude of the candidate. Several firms offer live or video-based training on this topic.


3) Orchestrate the interview with care, and make sure each interviewer has an assigned area to focus on. Emphasize the critical nature of recruitment to the entire interviewing team. 4) Incorporate more performance-based components into the compensation package. Pay for performance, not for simply showing up to work. 5) Make sure that every hire raises the average talent level in the group.



The Microsoft campus does not feel like the Apple campus or Netscape or other Silicon Valley companies. It truly feels isolated. The Microsoft employees live in a very sheltered and insulated world. It looks and feels like an ivory tower. There is remarkably little competitive awareness or direct customer exposure among the ranks. Microsoft employees do not think of themselves the same way those outside the company think of them. Rather than the “Evil Empire”, they view themselves as crusaders for “doing the right thing”, and “doing it right”, and that the rest of the industry is just jealous. I couldn’t help but wonder what would happen if the equivalent of “Radio Free America” was broadcast to Microsoft employees. I believe that this closed culture would be nearly impossible to achieve if the company wasn’t located in a relatively isolated part of the country.

The Microsoft employees I interviewed with emphasized that anything they needed to do their job was immediately made available to them. They consistently gave two examples. First, any time anyone has the slightest problem with their computer hardware or with any systems or applications software, they have a very large and extremely capable staff of systems administration people that will respond in literally minutes to correct the problem. They emphasize studies of many companies that find every employee spending disproportionate amounts of time fiddling with their systems, and that this is a very substantial hidden cost. Second, Microsoft maintains a library available to all employees that can retrieve almost anything related to the industry within minutes and rush it to the requesting employee. Also discussed were the benefits of private offices for everyone, free drinks, free dinners during crunch times, and virtually all-you-can-eat access to the latest hardware and software.

P AGE 10


No discussion related to Microsoft’s success is complete without at least mentioning the relatively unconventional way that they organize product teams. As with the recruitment process, Microsoft has refined the product team structure to a science. There are several excellent published books that describe the Microsoft product team organizational structure, so I won’t go into it here, other than to say that the recruiting process is integrally related to the organizational structure. Having consistency of structure makes it much easier for the recruiters to search for specific types of people. The actual project means less than your role on the project.

P AGE 11