Company: Microsoft
Date: 2008-06-20
Overall rating: 4/5
Employment status: current

Working at Microsoft isn't black and white
Pros: Despite Microsoft been broadly painted on the outside as a faceless corporation, it is a west coast tech company on the inside and it is full of a lot of geeks who are passionate about what they do. There is a ton to learn from a lot of really smart people, if you put the effort in. If you think there's nothing you can learn about engineering software by working at Microsoft, you're kidding yourself.

Employees are looked after well with benefits: health care, gym membership, the bus system, individual offices, free food (during crunch times), free drinks, etc. Depending on your team, you may take part in some pretty cool morale events (cruises, paintballing, jet skiing, etc.) and/or ship parties.

There are seemingly unlimited resources (except for time) when it comes to getting your job done. Hardware, both in the office and the labs; software, released and private; educational resources such as online courses, internal talks, guest talks, MS library, mentors.

The people are generally open-minded when it comes to non-MS technologies. There is no stigma against using Google for search, walking around campus with an iPhone or using vim to edit a text file (ok, this is not necessarily true if you worked on certain product teams). There is a healthy dose of criticism of our own products, even if this is never portrayed externally. Pragmatism and using the right tool for the right job are a solid part of the internal culture.
Cons: Although there are a lot of smart people at Microsoft, there are also a lot of incompetent people and a whole bunch of coasters (i.e. people who do barely enough to not get fired). 

The company is schizophrenic and the people at the top need to figure out what company Microsoft is these days, and let the rest of us know. I think there are many different spaces that we have no right being in, especially considering that some of the mature parts of the company could use some house cleaning.

There are definitely old boys clubs -- so to speak -- in parts of the company, and having the right friends can get you promoted faster. The performance review system needs an overhaul: the current system biases people too heavily towards working for a promotion rather than working to build great software.

Perhaps my biggest complaint is baring the weight of the company's external image. The worst are the irrational perceptions held by your peers in the industry; these are people who are suppose to be scientists and engineers, but religious assertions prevail once you get them talking about Microsoft. The company's poor image stems from both internal and external factors, and the people internally who act in the Microsoft image need to be taught differently or pushed out.