Pros
My work helps the US Federal Government more effective. My role is "trusted knowledge advisor" and I use data-driven products/prototypes to recommend a course of action. MITRE has a lot of emphasis on education and is paying for my master's degree. The government has a lot of problems, and as opposed to complaining (which we all should be encouraged to do) I have chosen a course of working to make things better. I am not a government employee, but my job is to make them more effective. I have good flex time, but that is project-dependant (as opposed to a corporate mandate). MITRE has subscriptions to hundreds of electronic resources (such as full IEEE everything) and I have been able to research well.
Cons
MITRE teams usually are small, so I don't get the same type of production environment I was used to in the commercial sector (large software development), but I am trusted, empowered, and able to find good, challenging work. Good is the enemy of great, and there is little great at MITRE - lots of smart, competent people, but the red tape of government frequently thwarts our abilities to achieve the best. Like I said, we can advise, but have no authority. This means I have to influence through being awesome and inspirational, rather than through telling someone what to do. :)