Pros
If you are a software engineer, you wil learn a ton about software development and have great opportunities to grow and enhance your technical skills. The company has a very broad range of projects to work on, so you can work on pretty much any kind of software that you want to work on. Your colleagues will be super-smart. The company is well run day-to-day and you can learn from you rmanagers and senior technical people. Decisions are thoughtful - you do not worry about abrupt changes in directions.or suddently the company deciding to shutter your division.
Cons
Senior management is cautious about new technologies, which has led to missed opportunities in lots of new markets. It is a competitive internal culture and employees are ranked against one and other for performance reviews, all the way up to executive levels. Because of that, management is not as cohesive or cooperative as they ought to be.