Teams in Microsoft are very interconnected which provides a great opportunity to work with developers from various backgrounds and having different skills. It also makes it easier to work on large scale projects that definitely add to your experience.
Cons
Development may be a little slow in some teams that focus on stability & slow gradual improvements.
Great people to work with. Most of the people are helpful, encouraging and welling to help you with any problems you face.
Based on your team you can be either a data scientist or an engineer, if you are going to be an engineer you will be facing great challenges to learn from.
There is always room for growth.
In most of the teams there is actual big scalability problems that you could learn from and working with a lot of the top notch technologies making you learn a lot in small amount of time.
Cons
Alot of poltics happening behind the scenes, below average compensation in comparison with the local market. A bit stressful deadlines.