Pros
1) Very friendly people. 2) Transparent about the companies finances. 3) Opportunities to learn new technologies. 4) Flexible working hours. 5) Bonus' paid when the company exceeds targets (Rare but it does happen) 6) No work over Christmas!
Cons
1) Pay reviews don't occur often, if at all. 2) Work can be very frantic sometimes. This is the nature of agency work, but it does feel like there's very little structure in place to deal with work that's just "Thrown" at you. This can be especially frustrating when you have two project managers fighting over your time for two different projects. 3) If you're remote you wont enjoy some of the benefits afforded to office staff. (Cakes/Fruit/etc) This is something that can be solved like other companies who have remote staff do with the occasional pizza day etc. 4) One particular member of management can come across quite rude and dismissive of opinions and suggestions offered. I don't think they intend to be like this, they're not a nasty person, but they need to work on it. 5) No benefits for long-serving members of staff. I wouldn't have benefited from this even if it was a thing, but I think rewarding loyalty is such an easy thing to do that a lot of companies miss. 6) Minimum pension contribution.