Pros
Medallia's engineering team contains one of the best combinations of smart, but friendly people in software development. We have very high standards for our engineers, but still manage to keep attitude and culture a necessity for new hires.
From a technical perspective, there are endless possibilities working here on machine learning and NLP problems on customer feedback data sets, distributed NoSQL systems, front-end data visualizations, automated testing frameworks, etc. Everybody can learn from anybody and there are precious few boundaries between teams.
From a learning perspective, some teams working closely with clients on agile/iterative processes while others focus on pure infrastructure tasks. Our twice a week deployment schedule means there's very little wasted time in developing, testing, and deploying new features and there's always work to be done and a willingness to hear new ideas. Various side projects (even non-work related ones) are plentiful and we are free to use and contribute towards open source projects as well.
Cons
Competition grade ping-pong table hasn't been used in months :(
On a more serious note, the stress of catering to a large number of enterprise clients and the small size of our engineering team do tend to result in a tiny bit of frustration which we take out with baseball bats and nerf guns on our tiny zoo of innocent stuffed sea animals.