Pros
If you become an employee, the benefits and retirement plan are very good. Chances are that if you survive your tenure there with your sanity intact, you'll be paid reasonably well and have a good retirement. They mostly support telecommuting for jobs that lend themselves to it, but that has a downside in that you rarely see the people you work with face-to-face, and your boss has little opportunity to see what you do with any regularlity.
Cons
The vast majority of people working there are not happy, with good reason. The level of stress and pressure there is immense. My manager had no time to know what I was actually doing. In the 16 months that I worked there, I'm not aware that my manager ever once looked at a single work product I produced. The best he could say when asked about my work was, "well, no one has complained about it." The systems are devilishly complex, but little clear documentation exists on the underlying technologies, so learning them is nearly impossible. And the people who do know it don't have the time to do any real knowledge transfer. Their development work is outsourced, so there is an institutionalized adversarial relationship between engineers and developers, making it very difficult to get anything done quickly in a crisis. And the politics are stifling.