Pros
You get to work with highly educated people that develop technologies based on advanced concepts.
Cons
For a small company, there's little to no flexibility and chronically bad communication. Any flexibility has been taken away by the management who is mostly related to the owner/CEO of the company. Comp. and flex time have been removed altogether and available vacation has been reduced by a week.
Most of management is blatantly incompetent and remains in place because of their relationship with the owner/CEO. Everyone below them can see what's going on but are powerless to do anything about it.
In the end, the company sells itself as on the cutting edge of developing advanced technologies for exciting new possible commercial products. What it really feels like is that we're just lying to customers to get their money to keep the company running while never really advancing the technology and providing a substantial return to our customers.