Pros
The company is very focused on the employees. The founder/president wants to grow his company, but always puts the employees first. Because of this attitude, there have never been lay-offs in the history of the company. They will not hire a new person unless there is both a current and long-term need for them. The culture is unlike anyplace I have ever seen. There is the typical free food and beer that is becoming in the norm in the programming/start-up world, but it goes beyond that. From the company trips for the ENTIRE company, to our company-wide parties in which we bring in all of our remote staff, there is very much an atmosphere of "work hard, play hard".
Cons
Because it is a smaller company, things happen at a pace that may be faster than most would like. The largest criticism I hear is about staffing changes (people moving between teams) happening with shorter than expected notice.