Pros
Flexibility and freedom. Nobody breathes down your neck about your job, you have a lot of freedom to work on what you want to work on, and on your timeline. Time off and flex time is generally not a problem. Salary is slightly above average for the small city, though don't buy into any of the hype about bonuses, etc it's all lies, they are promised often but rarely delivered.
Cons
Incompetent senior management. Constant shifts in company focus and direction, CEO and managers have no idea what they are doing or how to run a business. Working there is a constant popularity contest, those that kiss up with the right people are favoured, your performance or work ethic has nothing to do with your success in the company. Old boys club. Also management are always promoting perks, bonuses, etc but they are rarely delivered in the end. On the rare occasion that they are delivered, everyone is either treated the same (again meaning that your contribution is unrecognized, those that work hard and barely work at all get the same) or rewards are distributed per the popularity system (meaning often that those who do the least work but the most sucking up get the most rewards).
WRT career opportunities, it's a tiny company with very few partners, there isn't much of a corporate structure and thus not much room for growth.