Interviewing at Microsoft

In the Building 19 lobby on the Microsoft Redmond Campus, one of the candidates sitting at the table decided she was going to break the silence by having each of us go around and talk about ourselves and the school we went to. As the introductions went around, the names of the schools I heard were MIT, Notre Dame, UCLA, and so forth. I was really nervous hearing the names of these schools, as I had never met anyone who had ever attended these schools before. But I was determined to keep my game face and my focus.

My Software Design Engineer in Testing (SDET) interview started with the Microsoft Exchange team that morning. I had no prior software testing experience, beyond writing the occasional test plan as required in some of my college courses. But I caught on quickly to how they wanted a software tester to approach a problem. I felt pretty overwhelmed with the coding questions, mostly because I was nervous. I don’t think I did very well there. I think I was still feeling so over my head from being in Seattle, at Microsoft, and meeting the other candidates that morning. Fortunately, I had a really good lunch interviewer who allowed me to eat (Thank you! Thank you! Thank you!), so I was in really good shape physically when it was time to interview with the Visual Studio team that afternoon.

I think I did a really good job with the first Visual Studio interviewer. He asked me about WebTOP, and I explained to him how I had written the "Reflection and Refraction" module. It is an animated module that demonstrates in VRML how light can be reflected and refracted between two mediums, like air and water, based on physics equations such as Snell’s law. My real-world example was swimming in a pool. If you’re at a certain depth, you can still see people standing alongside the pool, but the deeper you get, the less you can see of the surface. While I was explaining how I coded the module, the interviewer said, "Yep, that’s Snell’s law." I looked at him shocked, with an expression of "How did you know that?" He said, "I was a physics major." I said, "Oh man, I can’t believe I just forced you to listen to all of that." He said, "Well, you got it right," in a casual, "it’s all good" sort of way.

I don’t think I did so well in the second interview on the Visual Studio team. I got caught up analyzing a math problem because I was taking an advanced calculus course at the time, where it’s all proofs and no numbers. I tried to write the mathematical proof that a number n cannot be divisible by any number greater than n divided by 2, but I wasn’t that good at writing proofs. As soon as I started writing, "For every epsilon in the set of R, there exists...," I knew the interview was over. Advanced Calculus really messed with my head that semester. I think the interviewer was surprised for a couple of reasons:

  1. I attempted to write a mathematical proof.

  2. I challenged his assumption about a number n not being divisible by a number greater than n divided by 2.

Maybe not taking things for granted in a face-to-face interview is a good strategy?

Finally, I had my last interview with the test manager. He asked me the "four jars" testing question, which I had never heard before.

You have four jars containing pills. Three jars contain good pills, weighing 10 grams, but one jar contains bad pills, weighing 11 grams. It is a fact that a jar either contains all bad pills or all good pills. You have one scale. How many times do you need to weigh pills on the scale to determine which jar has the bad pills?

After a few iterations of breaking down the permutations on the whiteboard, I figured out the problem. We chatted briefly about how finding the fewest steps possible to determining a fact related to software testing, since everything you do, every time you weigh a pill, comes with some cost. As the interview continued, he talked about life on campus and the various people on his team. And next thing I knew, I got excited and watched myself shoot up in my chair and start working again on the problem, saying, "You can do it the way I described.

Here’s how ..." and showed him my solution. Then I went pale, realizing what I had done. I turned around and frantically apologized for interrupting him. I’ll never forget the smirk on his face when he said, "It’s okay." All I could say was, "Sorry, the problem was still running on the background thread. It happens a lot," scratching the back of my head.

He just laughed, and the rest is history, as illustrated in this book.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.139.105.114