Pros
Relaxed culture/environment, nice people (like a family), free lunches and cereal breakfast bar, flexible work schedule, low cost health benefits, amazing events/contests, casual dress attire. Management in general is very open and friendly. Often times you forget they are your bosses or execs because they are very approachable and they'll listen to what you have to say. They are transparent about their business contrary to what some reviews say; they have short semi-weekly company-wide meetings to talk about company growth and innovations, which is informative and gives you an idea of what other teams are working on. The engineering team is full of talented and dedicated people. We work as a team and most people won't hesitate to help another out.
Cons
Business usually understands some of the technical things that need to be done even if it doesn't add immediate business values, but that is not to say that as engineers, we don't sometimes struggle to get our technical debt addressed. While some areas of our business are very innovative, well maintained and well documented, we also have other areas where we have to deal with some old legacy code and systems that are not so well documented that has to slowly be transitioned. It is all a matter of which team you are working with. Another con is that, it seems teams do often change, making you switch gears. However, that is a sign of innovation since our company does change focuses. Despite the recent layoff, I still believe that the company will make their comeback as we are making improvements in different areas of the company.