Pros
1. Co-workers and work environment are great. 2. Initial compensation is very competitive. 3. Depending on the project, the work can be very flexible for employees 4. Rewards self starters. You will do well in this company if you don't rely on the company to help you, but instead, help yourself.
Cons
1. No training - sink or swim. (which may lend to why the people are so great ... everyone is very quick and adaptable i.e. you are surrounded by swimmers) 2. Difficult to climb the corporate ladder ... as really, there is none that is well defined. On one project you may be a manager and on the next you may be a tech. 3. You are a contractor and your job security is always suspect 4. Salary increases are primarily inflation adjustments with excellent performance reviews and overall excellent company revenue performance ... without either of these, it will likely still be an inflation adjustment. You need to fight for raises, don't expect people to recognize and reward you accordingly. 5. The benefits are getting worse all of the time