Pros
Majority of people are very friendly and helpful. Most managers look out for their teams and encourage team members' development. Workload is typically varied and interesting.
Cons
Your experience is heavily influenced by your manager; so my review is positive as I've a good manager, but others have had bad experiences due to not being supported, being micro managed, or sometimes even feeling bullied by their managers. There's a lack of defined process, with most processes being in people's heads, and different depending on which person you talk to, which can make it hard to get stuff done. Pay is often under market rate. Lots of interesting work is outsourced / given to contractors, leaving in house staff to do maintenance. This also leads to significant knowledge loss on completion of projects / is an unsustainable methodology.