My First Microsoft Interview

I'm happy in my present situation, but working at Microsoft has always been in the back of my mind. So, when a recruiter for the Business Solutions division tracked me down, I was certainly going to find out more. The project sounded interesting enough, so when he asked if he could take it to the next level and ask some technical questions I said, "why not?" The questions he asked basically ranged from basic stuff everyone should know to basic stuff anyone who got a CS degree should know. I've been writing code just about every day for the past 15 or so years, starting with ASM. When I started out, I had an 8086 Zenith laptop with a CGA monitor that couldn't really do much of anything else. I actually wrote programs for quite some time inside the command line debugger until I managed to find some cheap assembler program at a local computer swapmeet. As a kid, I spent so much time programming that my mom would ground me from the computer, not from going out. My first first fight was with my programming buddy that "stole" my code and changed my copyright with a hex editor (Yeah, I learned that software piracy was a bitch before I could drive). Later, I got a bigger machine and moved on to C and then C++ and did a ton of work with the STL since those were still the days when Windows was still a DOS program :). These days, I write code literally from the time I wake up at 5:30 AM till I sleep (which usually results in far less than 8 hours of sleep). It's not that I have to. I just really enjoy it. I'll hit the clubs or go out on the town every once and a while, but most nights I'd rather be coding. But... I didn't get a CS degree. To the dismay of my teachers who all had their own ideas of what I should do, I was actually going to get a Theology Degree... I never could kick the programming habit though and ended up dropping out after two years to start a consulting company.

Although I've written and optimized pretty damn complex code like H.263 video compression, path finding AI, etc., worked on teams with people that had shipped products for Macromedia and Microsoft, and shipped  a few products personally, I haven't had to write my own heap class and I certainly wouldn't be using some of these slow ass sorts in my own apps (but hey, the .NET framework itself uses a quicksort which is pretty easy to implement). I faired well on the majority of the questions (like "what's the difference between a mutex and a critical section"), but it really made me feel silly that I couldn't instantly pull the answers off the top of my head to a couple of them. Why? Because it was basic stuff. Not the kind of stuff you may ever have to do in practice, but the kind of stuff you would definitely have learned if you went to school. If you didn't go to school, you have some programming chops, and some basic math skills, it's the type of stuff that you could teach yourself in a few hours. It reminds me of when I was in Junior High. We took a test to measure everyone's math skills for placement. I always enjoyed math, so I figured I would ace the thing. And I aced half of it. The complex math section. Somehow, I managed to get one of the highest scores on the complex math section, but totally screw up on the basic math section. Fortunately, the complex math score is the one that mattered, but I was always perplexed by how the hell I managed to score like that. In the end, I told myself I needed to slow down and double check the simple stuff. Treating it like it's braindead easy just makes you make braindead stupid mistakes.

This weekend I decided to go and close this little knowledge gap. I was going to start reading POSA 5 this weekend, but that can wait till next. The process has been suprisingly fun. I expected it to be pretty lame, but I was up till 4 am last night optimizing my radix sorts and heap sorts. It wasn't till my girlfriend's snores on the couch woke me up from my trance that I realized how fast the time was flying. If you  didn't go the academic route, I highly recommend the excercise. Yeah, you might feel a little silly doing it, but it should be pretty easy to work through--and if you are a nerd like me, you might even enjoy it.

We'll see what happens next. Maybe I won't like the team or the offer. Maybe they won't like me. Maybe I already shot myself in the foot. In any case, I am sure as hell going to prevent that same foot from getting shot in the future :)

In junior high, I wrote a GUI using GCC and Allegro for a report about Bill Gates. We used to call him the "super nerd". The one that was so smart that it didn't matter he was a nerd. It would be funny to end up at his old company one day... though I don't think it would suprise anyone I grew up with.

Published Sunday, July 13, 2008 4:47 PM by Jesse Ezell

Comments

# Tech interview questions » Do programming interview need to include asking for basic programming routines?

Pingback from  Tech interview questions  » Do programming interview need to include asking for basic programming routines?

# re: My First Microsoft Interview

Monday, July 14, 2008 3:22 PM by Jeff

Hopefully your experience interviewing is better than mine was. Microsoft teams are a lot like a box of chocolates.

I don't think you should worry about what you can or can't pull out off the top of your head. As a rule I wouldn't want to work for someone who expects encyclopedic knowledge, since you don't generally work without reference anyway. I'm more interested in how someone solves problems, you know?

# re: My First Microsoft Interview

Monday, July 14, 2008 3:31 PM by Jesse Ezell

I know what you are saying. But if you are working for a company like Microsoft you can't just go pull down any component library and use it's code. You have to be able to write the code yourself or find someone else at the company who can. So, there is a lot of value in knowing about some of these types of things when you are going to be writing frameworks... and the principles are pretty good to know regardless. For example, you could take the knowledge from bubble sort, which is not that great of a sort algorithm, but requires no additional memory, to learn how you might construct other algorithms that don't use extra memory to do their work, or solve problems when working in low memory conditions.

# re: My First Microsoft Interview

Tuesday, July 15, 2008 9:11 AM by Scott

I know I didn't take but maybe two CS classes in college.  I took CE as a major and I currently received two phone calls from Microsoft in a 1.5 years out of college.  Its not that I am scared to go to the next level, its just that I am very well grounded here at home with a full time Girlfriend.  I don't really want to move and have discussed it with her which she needs to be in Florida for the next 2 or 3 years so I decided not to leave her.

About Algorithms, don't worry I don't know much about algorithms either and I have no CS mentor here able to teach me at my work. I just code the basics inserting/deleting of a workflow.  Some day I wish to be known as a guy who works at Microsoft. I think they would teach me a lot in a very small amount of time which other than the R&D they do would be the reason why I would go there.

# re: My First Microsoft Interview

Wednesday, August 13, 2008 8:05 PM by Tanton Gibbs

Ars Digita University has a number of the "basic" instruction courses for free online at http://aduni.org

You should check them out as they are very interesting, even the basic ones!  Also, MIT OpenCourseware has an online algorithms class that covers a lot of advanced topics and follows the CLRS Algorithms book.

# re: My First Microsoft Interview

Saturday, April 04, 2009 6:10 AM by alyankrizo

[url=mamarama.ru/.../28]Ипотека[/url]

Having a good discussion is like having riches

alyankrizo

# re: My First Microsoft Interview

Saturday, April 04, 2009 6:34 AM by birasonimer

[url=cameras-catalog.com/.../126]Olympus SP-500 UZ[/url]

The least of things with a meaning is worth more in life than the greatest of things without it.

birasonimer

# re: My First Microsoft Interview

Saturday, April 04, 2009 6:57 AM by elikrade

[url=seeerch.com/.../cambria_homes]Cambria homes for sale[/url]

It depends upon what the meaning of the word 'is' means

elikrade

# re: My First Microsoft Interview

Saturday, April 04, 2009 7:21 AM by fulikrasrintu

[url=seeerch.com/.../buena_park_homes]Buena park homes for sale[/url]

You have to have confidence in your ability, and then be tough enough to follow through.

fulikrasrintu

# re: My First Microsoft Interview

Saturday, April 04, 2009 8:09 AM by jolisfregi

[url=mwave.com.ua/.../58]микроволновая печь whirlpool[/url]

The ability to convert ideas to things is the secret of outward success.

jolisfregi

# re: My First Microsoft Interview

Saturday, April 04, 2009 8:33 AM by lapkalipkurib

[url=yourphone.com.ua/.../37]мобильные телефоны Pantech Curitel[/url]

Frequently the more trifling the subject, the more animated and protracted the discussion.

lapkalipkurib

# re: My First Microsoft Interview

Saturday, April 04, 2009 8:59 AM by morahanova

[url=teleki.com.ua/.../17]телевизор daewoo[/url]

For success, attitude is equally as important as ability.

morahanova

# re: My First Microsoft Interview

Saturday, April 04, 2009 9:23 AM by polikrasnimb

[url=washers.com.ua/.../17]стиральная машина evgo[/url]

We rate ability in men by what they finish, not by what they attempt

polikrasnimb

# re: My First Microsoft Interview

Saturday, April 04, 2009 9:47 AM by qothemfinst

[url=rix.com.ua/.../630]рада-детектор[/url]

A man of ability and the desire to accomplish something can do anything.

qothemfinst

# re: My First Microsoft Interview

Saturday, April 04, 2009 10:11 AM by xordanat

[url=teleki.com.ua/.../33]телевизор JVC[/url]

The height of ability in the least able consists in knowing how to submit to the good leadership of others.

xordanat

# re: My First Microsoft Interview

Saturday, April 04, 2009 10:36 AM by zolindrestik

[url=ava.com.ua/.../b458]ноутбук sony[/url]

The difference between one man and another is not mere ability - it is energy

zolindrestik

# re: My First Microsoft Interview

Friday, April 10, 2009 2:20 PM by coolwadprof

[url=www.futuracomposites.nl/.../profile.php]Charlotte Used Cars[/url] Charlotte Used Cars. Virginia Beach Used Cars

# re: My First Microsoft Interview

Saturday, April 11, 2009 7:56 AM by southeastmichiganlofts

[url=qyuetrsgr.goodaddress.eu/loft-office-westside-atlanta.html]loft office westside atlanta[/url] loft office westside atlanta. seattle sodo artist loft

# re: My First Microsoft Interview

Sunday, April 12, 2009 9:10 AM by gewascede

[url=qyuetrsgr.hostaim.com/apartments-maria-mandre.html]apartments-maria mandre[/url] apartments-maria mandre. apartments for senior week in ocmd

# re: My First Microsoft Interview

Monday, April 13, 2009 7:06 AM by Audi tt limousine

[url=usedcar.warszawa.pl/.../search-Audi_Tt_Limousine.html]Audi tt limousine[/url]

I may have said the same thing before...but my explanation, I am sure, will always be different.

bimpolist

# re: My First Microsoft Interview

Sunday, October 25, 2009 1:21 PM by Marcus

Nice article as for me. I'd like to read more concerning that topic.

# re: My First Microsoft Interview

Saturday, October 31, 2009 12:08 PM by Sussy

I almost forgot, the only way to secure yourself from spy devices and irritative calls is to use <a href="www.jammer-store.com/.../a>. Jam mobiles around you.

# re: My First Microsoft Interview

Sunday, November 22, 2009 9:27 AM by London escorts

It was certainly interesting for me to read this post. Thanx for it. I like such themes and everything that is connected to this matter. I definitely want to read more soon.

Leave a Comment

(required) 
(required) 
(optional)
(required)