Company: Microsoft
Date: 2013-05-01
Overall rating: 3/5
Employment status: current
Experience level: Senior

Great or awful depending on the strength of your manager.  Luckily you get a new one every 18 months or so.
Pros: Flexibility, good pay, interesting code.  Engineers are highly qualified.  There are so many divisions and technologies and different kinds of customers that if you do a good job, it's easy to move into a role you like.
Cons: Microsoft thinks that good engineers should be promoted into business roles.  They don't do well.  They don't like it.  So good managers and business people are fairly rare.  The annual review system pits people against each other instead of rewarding team work.  It also scores on a bell curve so you can do a great job, but if you happen to be the only person in your band, you get an average score.