Pros
Very little is sacred--as an engineer you'll be trusted to design and build whatever you need to solve some tough scaling problems. Management more willing than most to invest in robust replacements for legacy systems. Good opportunities to pick up newer technologies and move away from bad ones, and mobility even between departments. Enjoyable culture of going out for drinks with a big alumni network. Good pay and perks--central downtown office, insurance options, commuting, lunch, gym.
Kontras
Ongoing unrealistic expectations being set about how much impact each project will have. Too much unwritten tribal knowledge lost with turnover, and not enough communication between departments about problems and opportunities. Code doesn't often get the refactoring it needs.