- If you're a smart/talented person, there is plenty of opportunity for advancement (technical and managerial).
- You can make an impact on everything from application architecture to influencing management decisions.
- Very competitive benefits.
- Good work/life balance.
- Good company culture.
- They care about their people.
Cons
- A non-competition agreement that is very restrictive and enforced, so be sure you're ready to sign.
- No overtime pay/bonuses.
- There are some dolts in management, but show me a company where there isn't at least one.