Pros
The chance to direct yourself into interesting areas of work. Whether that be working closely on tasks which you will later see reflected in the news, or on technology at a scale rivalling the biggest tech companies. The interesting work is the single best thing about working here - it really is mind-blowing sometimes. Cutting edge technology in many areas, the chance to work on the forefront of what is possible. Lots of good culture stuff, hackspace style meetings, teams coming together to work on a research project/innovation idea for a week, internal conferences, sports teams and socially active staff members. Lots of opportunities to work overseas in various locations. Three-year posting structure gives a formal timeframe to progress and move into the work that interests you the most. You can develop niche technical skill sets which are extremely in demand - this job can be a launchpad into high paid interesting work.
Cons
Technical ceiling - it is hard to get promoted whilst remaining purely technical after a certain point. Specialist skills payments help greatly, but salaries are lower than similar work in the private sector. Public internet access can be inadequate in some locations, due to the high levels of security. In places where this happens, it cripples technical work which relies on open source software and makes development much harder to junior developers who are used to being able to google anything. Good steps were being made to address this, which I hope has led to better availability and appropriateness since I was there several years ago. Some areas have slow, deep layers of management. Others are dynamic and experimental, but it really depends where you are. At the Cheltenham site, there are various long-standing issues due to overcrowding.