Company: Microsoft
Date: 2016-09-30
Overall rating: 5/5
Employment status: current
Experience level: Junior

An Excellent Company that Takes Care of Its Employees
Pros: Excellent Work Life Balance - Most teams are very flexible with working hours. As long as you get your work done and you're not completely AWOL you'll be fine. No questions asked when you want to take a vacation or need to take a sick day.

Good Career Growth - You may have to put in long hours if this is your priority but you absolutely can move up if you want to. Self-movers are encouraged on most teams
Cons: Bureaucracy - With so many layers in the organization things are bound to get lost in the shuffle, or muddled by middle management. Most of the time it's fine and management does a good job shielding SDEs from churn, changing priorities, etc... but too often do developers get hit by reorgs, and if you're unlucky it can really affect your career path. It is hard to gain a lot of momentum and good feedback when you're being shuffled from place to place.