Pros
This company provides a healthy environment that encourages employees to pursue tasks that provide value and growth to themselves as well as the company. Its a small company, thus the demands of a position are subject to change however the company honestly listens to employee feedback and provides resources to empower them through challenging situations. It also helps that management is honestly invested in your success. I've had to company president casually discuss process issues I had communicated to my project manager and employees have monthly check ins with the managers to discuss any topic on their mind. I also share a strong sense of support from my team and group within the company, as we are all dedicated to supporting each other in a highly professional and technical environment. Also, free snacks.
Cons
Some people aren't going to like being put into positions they didn't initially sign up. Additionally, as a small company contracting with large clients the work is subject to an inconsistent flow rate where, when coupled with a single employee departure, can create significant (but temporary) upticks in work where hours can become very densely packed.