Fantastic Place to Develop Technical Skills
Pros
Lots of technical experience in your peers. Variety of assignments that will give you a great deal of experience. Options for going into more technical depth vs. more system level technical knowledge. Lots of teams/roles you can move into.
Cons
Each team has its own culture, and they can vary a lot from each other. This includes their own work/life balance expectations (Good or bad thing) Upward movement is limited to your ability to play the political game quite well. This includes technical and management upward movement. Depending on the team and whether you're in a "focus area", your resources can be quite limited which can include pay and visibility by upper management (making it harder to progress if you're stuck on those teams) Reorganizations every 2ish years per team