Pros
The people who work there are wonderful. The work they do is important. Compensation and benefits are decent although declining with each year.
Cons
All engineers are treated like one size fits all. There is no understanding that software development has advanced beyond just code monkeys typing. Schedule is the bottom line. Quality has gone out the window. There is no emphasis on personal development or growth, nor opportunities to develop and grow. There are so many middle managers nothing can get done. Managers are not trustworthy, either deliberately or because the technology has advanced so far beyond them they cannot help but misrepresent it. And forget it if you want to be a leader and advance up the chain, you'll need to wait another 10 years for all the existing guys to retire.