It's been an amazing ride. So many opportunities to make massive impact on the world of computing.
Pros
So many different products to choose from equals tons of opportunity to grow your career all within the safety of a single massive company. Great benefits especially for families or folks planning to have kids. Largely up to you to decide what to work on and when to work on it. AMAZING people to work with and learn form.
Cons
Design is largely driven by PM, so if you're not a PM this can be frustrating (this varies greatly depending on team and individuals though, some are wonderful). Depending on team dynamics the review process can be based heavily on politics and popularity rather than quality of work or business impact. Extremely difficult to get high quality designs pushed through into shipping code due to unusually constrained resources for such a RICH company.