Pros
The benefits (great health insurance, very basic dental, basic vision, good 401K matching) are pretty good, much better than the industry average, the only downside is no pension, but even large companies that used to offer pensions (like Boeing) are no longer offering them to new employees. Overall the culture is good for software developers. Short term hacks that hurt in the long run are discouraged, unnecessary schedule pressure is not applied allowing developers to do quality work. A focus on continuous improvement is part of the culture and this includes occasionally throwing out old systems, and re-architecting them.
Cons
There seems to be some lack of communication across organizations. Some designs may make sense from one point of view but work less than ideally across full integrated systems. Each individual organization seems to have lots of autonomy which empowers them, but it would be nice if there was more cross organization cooperation, so the autonomy could be used more effectively. Expect to have the power to change things your organization is in control of but expect resistance or delays when you have dependencies on other groups.