Pros
* Telecommuting is common among employees, but dependent on the project/client you're working for.
* Not uncommon to be asked to learn new roles/technology as the company is small
* Everyone shares knowledge with everyone, there isn't a 'me' attitude
* Benefits are good all around and they recently have started 401k matching
* They love happy hours and company gatherings and go out of their way to ensure people stay in touch with everyone else
* Work ethic and desire to learn are far more valuable to the company than overall qualifications; great for college grads.
Cons
* Its a small company with a lot of projects; not uncommon for you to be placed on one or more projects
* Everyone works in different locations (home/client sites/HQ) so communication with other members of the company are relegated to Skype/Email/Slack
* It is possible that you will work by yourself on client projects