Pros
The company is managed by good managers and people who I believe mean well. The work environment is very collegial and people truly enjoy working there. The company is very good at what it does. Doesn't require overtime without compensation.
Cons
The problem is because of their size, all of the top level employees are techies. There is only one person who could be called "HR" person on staff. So management of employees, including company morale, becomes a problem if you're too busy to relate to the people who work for you. While I management means well and are good peoplel, they don't manage employees well, you'd better be good at self motivation. The pay is okay, benefits are average. Good if you're a beginner but not much room for advancement. Also very little PTO, only 5 days a year so... yeah don't ever get a serious illness and you'll be fine.