Fantastic company and people, a bit behind in technology
Pros
Relaxed work environment, good benefits and time off, competitive pay (after annual company performance bonus). Enough employees seem to "drink the Kool-Aid" about this being the best company ever, which creates a very positive environment. They really do try to think about doing the right thing for the membership, not just looking at them as a source of revenue to squeeze.
Cons
Because so many employees think this is the best place ever, it can create complacency in some people. The technology is a couple years behind where it should be. Yes, it's a big company with complex systems, but I think that gets used as an excuse too often. Also, many programmers are treated too much the same without being properly trained in each specialty. For example, all Java developers write server-side code, web services, and front-end code. As a result the web services are not always well thought out and the client-side code is a mess.