Company: Microsoft
Date: 2014-02-20
Overall rating: 4/5
Employment status: current
Experience level: Confirmed

Very exciting journey so far...
Pros: 1. No matter where your passion lies, you can find something at Microsoft. In my seven years at Microsoft, I've seen people move across disciplines (Dev <-> PM <-> Test), technology stacks, teams, products, office location etc. 

2. Roles are not airtight. I've seen Dev/test define the products and I've seen PMs churn out code - it really depends on you.

3. Generally very open culture - I been in meetings with DEs and they are fantastic to work with. 

4. Great workplace - I can requisition furniture / books / hardware etc without filling out thirty forms or having to get approval from my upper management.

5. Great workplace II - (Generally) Very smart and aware people. Most people I've worked with are receptive to feedback and will accept fault and move on. This may be specific to my org though but I haven't noticed any politicking amongst the individual contributors.

6. Benefits... Best in the industry (if you ignore the free food bandwagon).

I can go on and on...
Cons: 1. There's a desire to create something new that works for our customers but it is often orthognal to what our competitors are doing which leads to a lot of debates on how to proceed.

2. Lots of legacy code. In general, changing something that's been around for a long time is difficult. Breaking changes are avoided and that sometimes limits the degrees of freedom for product design.