Great work life balance
Get to work from home (coder)
Varied work (for Java developers)
Sensible approach to technology (no jumping on to the latest technology because it is cool)
Metriocracy
Flat manegement structure
Fair amount of autonomy
Some very good people to work with
Cons
Too much of a "roll your own attitude"
Sometimes can be a little conservative
Some people get pidgeon holed
Support team a little dysfunctional