Pros
Relaxed work environment, stocked kitchen, Thursday lunches, fair compensation, above average 401k and PTO. SMART folks all around you, all willing to help contribute to your learning and success when needed. The knowledge and experience pool is quite deep. Potential exists to move up/on as you so desire on the tech/engineering side. Though finding and cultivating those opportunities will certainly take time and somewhat significant effort.
Cons
High turnover, specifically in the engineering/QA departments hampers knowledge/experience continuity and flow. Past super-aggressive release schedule has burned some clients. This has eased considerably, though it hasn't been forgotten entirely. Open floor office designed to stimulate collaboration, in reality stifles it and actually can create strife between some groups. Just an example of one of those office buzzwords that seem like a great idea on paper. The on-boarding training process, while it has improved in recent months, is still fairly lacking.