Pros
Great autonomy for individual contributors, very little office politics and great developer peers that you can learn a lot from. Employees are very driven to deliver for customers and everyone interacts with each other with the intent of achieving that goal. There seems to be a great "no jerk" policy in place where and everyone I've interacted with is pleasant to deal with and genuinely wants to help. Management is also extremely flat and primarily focuses on the mission instead of the corporate nonsense and mind/political games that can make other companies a real drag to work for. Also, from my experience, time spent in meetings is extremely low and the meetings I do have to go to tend to be useful. If you just want to put your head down, write great code and learn from people with the same goal, this is a great place to work.
Cons
The project timelines are aggressive, sometimes result in after-hours work but I don't think this is more than is typical of a growing and successful small company. If you can't handle that, this isn't the place for you.