If you have initiative and a healthy desire for a challenge, this is a great place to work. You can define your own value and make a personal contribution. The people are great.
Cons
The business is very dependent upon its customer's needs and that means that project goals can change quickly. High risk, if you're deeply invested in a particular technology that becomes obsolete.