Pros
Flexible work hours, consistent raises and bonuses. Relatively good work/life balance depending on the group and management team you have. The pay and benefits range from decent to competitive. It will depend on not only where you are in the company, but physically located as to how decent and competitive.
Cons
If you let them, they will work you to the bone. The experience someone has at this company will come down entirely to what group they are in and where they are located. Some teams are worse than others, so there are huge differences in company culture and nothing is consistent. Others have mentioned that there is an unspoken rule that you will be expected to work after hours and during vacation days. This is somewhat true to an extent, and is worse on some teams than others. My team will respect those boundaries if you make it clear that you will be unavailable and unreachable, but they don't see any problem with calling and asking a question. I have seen other teams interrupt someones vacation multiple times because they don't know how to manage customer expectations or resources. That leads to another big down side. Management does not know how to manage customer expectations or the customers. Every slight whim and complaint is indulged to the detriment of the employees who have to scramble to make things work. New products are sometimes rolled out with the training and support being an afterthought, so the training that is delivered is half assed with the expectation that you are now an expert and these 15 hour webinars that were recorded 3 years ago should be good enough to bridge any gaps.