Company: Microsoft
Date: 2014-02-25
Overall rating: 4/5
Employment status: former
Experience level: Junior

Great place for growth and work-life balance, but really depends on your team/manager
Pros: Great environment to learn a lot from teammates and trainings. Chance to work with some quite talented engineers/managers. Great place to learn disciplined and structured software engineering. Flexible work schedule and care about work-life balance.
Cons: It really depends on your team and managers. In good teams, you can work on great projects which have big impact to the company/industry and make you feel satisfied, and work with talented and nice teammates who you can learn a lot from. With great managers, you can have a great career path in this company and get promoted more easily (compared to those who don't have good managers).
And make sure you're really interested in programming on Windows.