Pros
You get to work on many different projects, and you are given a lot of voice regarding the work you are involved in. Great place to expand your knowledge regarding software stacks that you may not have the opportunity to experience elsewhere. The architects and engineers come from very noticeable backgrounds, and helps you get deeper insight into the software industry.
Cons
Not exactly the best wages, but definitely still a great place to pick up knowledge that cannot be measured in money.