Pros
Perks are pretty well-covered in other reviews. Most importantly to me, I have a lot of autonomy, and I'm working on interesting projects that really affect the company's success. If I want to make an improvement or add a feature, all management cares about is that it improves the site. If you can prove that, you can push what you want to production. Turnover rate is probably among the lowest of any mid-sized engineering team in the region. Not necessarily a pro, but in my opinion the most important metric regarding quality of life. The hiring process is extremely selective. Some real rock stars work here. And they're all awesome to work with. Finally, the company seems to radiate success. It's just fun to work for a place that's going big.
Cons
Any developer who needs structure will struggle here. But for good developers that's usually not a problem. As the company has grown, it's taken on some more structured policies. Definitely successful-company problems, but as much as management is trying to keep the startup feel, we're heading in a more corporate direction.