Microsoft Internships
 
A couple months ago, I wrote a few paragraphs about interning at Microsoft, which is currently shown here, more or less. I prefer my original version before the jokes were edited out, so to set the record straight, here's the original transcript, with my comments which didn't appear there colored in blue.
 
What drew you to an internship at Microsoft?
 
I loved being a beta-tester of Microsoft software; for several years, I had been receiving pre-release copies of Windows, Office, and Games software so that I could try it out and help the internal test team find bugs. It truly is a great feeling to look at the software everyone is using and remember how I helped bring it to that state. Everyone has a vision for what they would like in the next generation of software, and I knew that if I could feel such a strong attachment to the products even as an external beta tester, the chance to be a real part of the product team was the logical next step in helping me shape the future versions.
 
What did a typical day as an intern look like?
 
I would usually spend the morning working on writing my automation program -- I developed a few tools that could test many more permutations of program inputs than anyone could manually run through. Then lunchtime by the fountain; my jaw dropped the first time I saw someone carried out of their building by their team and dropped into the water... though it's even more reflective of MS culture to note that no one else even bothered to look up at this apparently normal occurrence. In the afternoon, I would look over the bugs sent back to me after they had been fixed, and verify that those features were indeed operating as they should. I might then run to a meeting where I would brief the team about any important findings I had recently made during my security testing, then head back to my office to add a few more features to my automation program. Finally, out the door and off to dinner with intern friends -- sidestepping the soggy person climbing out of the fountain.
 
What was your biggest challenge as an intern at Microsoft?
 
Leaving a legacy is definitely the biggest challenge. It's easy to spend 12 weeks in Redmond and help out the project for a short three months, but it's far more useful to spend 12 weeks in Redmond and help out the project for three *years*! Test automation is a big area of focus at MS, and is the key to having a magnified impact. It felt great to be back at school and still get e-mail from strangers at MS asking for my advice about using my automation to test products I had never heard of.
 
What's in your future at Microsoft?
 
Now I'm an SDET ("Essdet"), which means that I work more closely with the product source code and spend a little less time actually running the program. My focus is on performance testing, so I get to study optimization techniques and decide how they fit into our project. Most recently, that was the game Halo. I always thought of myself as more of a mathematician than a coder, so with that background, I was able to find a few places where I could optimize the game's math routines in assembly. There's always room for programs to get even faster than they are now, so I want to become an expert at finding and fixing performance bottlenecks.
 
Biggest surprise at Microsoft?
 
Sploosh. Ok, enough about the fountain. I suppose I have been most surprised at the scope of influence I could develop in a short time. I started my first internship with the goal of getting the Office team to fix a discolored pixel in one of the office icons. I found myself writing tools that are still being used by various groups a few years later, and my first full-time tool project has become a standard for my division to use. By the way, I don't think they've fixed the icon yet.
 
Greatest opportunity?
 
The greatest opportunities are also the greatest responsibilities, but they're worth taking. My project that is used so heavily now started as a small program my manager and I wrote for the Halo group to use to save some time. After we had met that goal, the opportunity arose to broaden its use to a couple other project groups. I knew that if I brought them on board my service, I would be perpetually responsible for keeping it working smoothly, and it took some rewriting to make it scale to other groups. But by sticking with it and working through the growing pains, I now have a solid service with hundreds of users, which repays its development cost every few weeks. Did I mention that it also gives me access to all the company's Xbox games still in development? It was a small but important choice; to be satisfied writing programs used by a few dozen immediate coworkers, or to volunteer to support the whole division, but it gives me a thrill every time I look at the usage logs. And now that everything is running smoothly, we can all enjoy the benefits with no further cost.
 
Your motto?
 
"Here's the new assembly code I dreamt last night..." Alright, I admit there were some weeks last fall where waking and sleeping thoughts seemed to trade places, but that's only to be expected as we hit the final crunch time before Xbox launch. My best assembly did come to me in my sleep, and my coworkers can attest to my occasional tendency to see flashbacks of the graphics bugs I was hunting down, long after I stepped away from my desk. But why would you want to work at a company where you *didn't* feel such a strong attachment to your work? So let's say, "Give me a project I can dream about."
 
Comment in my guestbook
 
  Updated: Jan-20-2004
  By Roger Wolfson