Pros
Fast really takes care of their people. The company itself, the project managers, etc all go above and beyond to provide a positive working environment in which everybody is doing work that matters. This care and concern extends outside of the office as well in the form of weekly/monthly/impromptu events intended to get everybody out of the office and build some serious teamwork. Yes, developers work long and hard at times, but management is right there with us and fights for us when needed. We have crazy good benefits, a killer compensation package, and are encouraged to continually improve ourselves and learn as much as we can about the software. There is not a rigid hierarchy. I feel comfortable talking to anybody and everybody in the company, including partners. People are generally very approachable, friendly, highly intelligent, and happy to help.
Cons
We really don't move all that often and it's an aspect of the company that everybody is made aware of early on, but some people still consider it a con. Work-life balance can be a bit skewed. The nature of active projects is to require more time and work and our willingness to get things done is what has made us so successful.