Pros
Government job - if you're a federal employee, you have almost unshakeable job security unless you REALLY screw up. If you're a contractor, federal law requires contracting agencies to pay prevailing wage and benefits, vacation and holidays with pay.
Cons
Office politics, projects allowed to run amok and out of control, various orgs are totally at odds with each other. Middle and upper management run their orgs like their own private fiefdoms. I've personally witnessed a manager admit that a particular change was a good idea for the agency but they wouldn't sign off on it unless the manager who wanted it was willing to sign off on something they wanted. Ridiculous power plays resulting and pet projects result in astounding levels of waste and inefficiency. Attempting to speak up about the blatant waste and abuse of ratepayer funds is met with total apathy. Management might agree with you, but they'll tell you it's just the way it is and you need to accept it. They're not willing to stand up for what's right and help fix it. When nobody wants to be part of the solution they become part of the problem.