Pros
The assigned work is fun, engaging, and plentiful. My managers pride themselves on moving employees around the company if they express an interest toward a certain specialty. You can fairly easily find something you're interested in working on within the company after a bit. As for growth opportunities with new tech, the company has taught me essential skills since I started. Most of my coworkers have been smart, driven, and capable people. Very easy to get along with too. The work life imbalance isn't stringent, and my managers have allowed me to craft my schedule how I like. I feel like the mission has always been important to my program managers.
Cons
The culture doesn't really stand out from the crowd, and there aren't really any company wide outings. While the company is getting better at adopting cutting edge technologies, there is still a lot of red tape, strictness, and monotony that comes with government/classified work that can get in the way. With most projects I've been on, it often feels like we're one step behind current standards/processes in this space. Fledgling projects with interesting problems/tools can be volatile and funding may not always be secure for them.