Fri, Apr 18, 2003
After never thinking that I would, I had two days of interviews at Microsoft in the middle of March, 2003. The first day was with the MSDN content group. They’re the folks responsible for all of the technical articles at http://msdn.microsoft.com and the ones at Microsoft with the job most closely related to what I already do. It’s their job to tell developers how Microsoft technologies really work through articles, talks, samples, online chats and whatever other
means they think will be effective.
My first interview of day #1 sticks freshly in my mind even two weeks later. It was a guy that I’d most closely describe as a human molecule. I’ve been told that he’s big into coffee and it’s not hard to see the effects the guy never stops moving! Likewise, his brain was constantly moving. He had all kinds of interesting questions about how I would turn my product ideas (created on the spot) into compelling educational materials of Microsoft technologies. Very fun.
I had several other fun interviews that day, all with smart people asking really great questions. However, after a few interviews, I was disappointed that nobody was asking me to write any code on the board. Apparently I had enough street cred that this wasn’t necessary for me, but one interviewer laughed and said I could write whatever code I wanted on his board if it would make me happy. Another had a strongly negative reaction to the idea that anyone would be asked to write code on a whiteboard, which he considered a supremely unnatural act. In fact, all day long, I had questions that dove into my motivations and my ideas, but none of them tested my technical knowledge at all until the very last interview w/ my potential boss’s boss (or my boss’s boss’s boss I lost track). She asked me to solve one thought question, one visual riddle and to write some code on the board. The thought question we talked through, but she threw out leading questions faster than I could come up with my own conclusions (although it was a very interesting discussion). The visual riddle seemed impossible at first, but I solved it in a few minutes. When I showed it to Don Box, he also declared it impossible, then solved it faster than I did (bastard). The coding question showed me just how unnatural it is to write code on a write board (even my simple linked list code had three bugs in it doh!). I am *totally* addicted to incremental code-compile-test and at one point even suggested using a goto to avoid erasing half of my code to insert a loop (truly the low point of the day).
Even so, at the end of day #1, I was energized. I’m one of those sick people that loves to be tested, especially if I’m confident that I know the answers. My last interviewer told me that I had done well and we talked about what would happen if I was offered both jobs from the two teams that I was interviewing with. She needn’t have worried day #2 did not go nearly as well.
The day #1 position was a highly technical position, which I’ve trained for since I was 12. The day #2 position was a <gasp> marketing position. But is was *so* cool. The job is to take whatever technology MS comes up with that day and make a business out of it. It was so diverse and so different than things I’d done before that I was drawn to it like a moth to a flame. Unfortunately, my answers made it clear that I didn’t have anywhere near the background needed for the job. I felt like a new college graduate, trying desperately to match something from my background to what they were asking.
As a measure of the kinds of questions I got on day #2, at one point, I was asked to develop a marketing plan for packaged ice to native Alaskans. “Did you just ask me to sell ice cubes to Eskimos?” I asked. “Uh, yeah,” he agreed. This was during lunch. And it wasn’t the hardest question I got! By my last interview, I was so scared that they might actually offer me the job and that my brain would explode trying to do it that I confessed that I was definitely not the man for the job. However, that didn’t stop my potential boss from drilling me on how to make a business on one of my sons’ hobbies (about which I know almost nothing).
Of course, I never clicked with anyone on the team from day #2 (you can’t click with someone that thinks you’re ignorant). However, the experience was amazing. One of the interviewers had a fabulous technique that I just had to appreciate — he had me role-playing in various real-world Microsoft-related situations over and over again til I swear my ears were bleeding. I’m a big fan of behavioral interviewing instead of role-playing as an indicator of someone’s real skills, but watching him put me through the ringer was a thing of beauty.
Speaking now from experience, I’d have to say that the Microsoft interview process is all about finding the right fit. That’s the case with all interviews, of course, but Microsoft seems to be very good at it. The fit includes both technical savvy (which they seemed to assume in me) and personality relative to the team. I fit very well into one group and not at all well into another. Working with the day #1 group would make me a successful part of the Microsoft machine, whereas if I had mistakenly gotten the job associated with day #2, I would have been set up to fail. So, if you are turned away from Microsoft, it means that you wouldn’t do well there. That’s a good thing to know; you certainly don’t want to take a job at which can’t possibly be successful. I know I don’t.