Pros
Historically had a high ratio of advanced degrees, particularly in computer networks. Employees are smart and friendly. The atmosphere is collegial. A great place to transition from grad school to industry. The technology is interesting/advanced, so you can learn a lot at first. CEO is fantastic at business development. Flexible work hours, and employees can work from home for extended periods.
Cons
The company is small with a very focused product suite, so there's not a great variety of technology to work on. It's mostly C++. There's a lot of deadline pressure, which makes it hard to allow people to move between projects, and also produces a lot of technical debt in the software. Most software engineers are straight out of school and mentoring in good software development practices is lacking. The company size means there isn't a lot of career growth after the first few years. The CEO is reluctant to share how the company is doing financially and as good at motivating employees as he is at motivating customers.