Pros
Flexible schedule (depending on nature of work; support staff work strict hours) 401k match is excellent Employees passionate about building to quality software Ability to change (can feel slow, but happens) Strong sense of community Good work-life balance for most employees/departments Can typically change positions and/or teams if desired Gives back to local community
Cons
Some classic problems of a small family-owned company People have worked there their whole career so it can be hard to have perspective A few problematic managers and leads (e.g., under-involved with poor performers, poor communication skills) Outdated interviewing styles Conflicting goals from upper management (if everything is priority 1, nothing is priority 1)