Still a great place to work, just don't let aggravating decisions from senior management get you down!
Pros
Smart people, many tough problems to solve, significant software engineering challenges, never boring, your work has a world-wide impact, and you are empowered to make a difference for customers. Plenty of opportunity to add value in the software development process, as a solid engineering leader, and as a subject matter expert. You won't be a big fish in a little pond here; if you're looking to stretch yourself and work, everyday, with people smarter than you, then this is the place to be. Microsoft has a soul, a lot of diversity, and they reward based on contribution... you can be successful here!
Cons
layers of middle management can impede progress, senior management entrenched and protecting their position -- not advocating innovation if at all risky, some groups want you to sell your life to the company