Only join if you want to work on classified projects
Pros
You have the opportunity to work on classified projects if you have the required clearances
Cons
The clearance application process is daunting and takes a long time. During the wait period, you'll be placed on one of the non-classified projects which aren't as exciting and are very under resourced. If you don't get a clearance, the project options are limited and aren't as rewarding. As mentioned, they are very under resourced and are mainly filled with interns/graduates, so there isn't much opportunity to grow/learn with high quality software Engineers. The experience I had was bitter - management was all over the place. Micro managing employees and giving preferential treatment to some over others. The company boasts fair treatment and that it welcomes diversity, but this is not what I experienced. I worked on a project that was sinking and instead of taking ownership, management decided to punish certain individuals. This didn't sit well with me as it created a very toxic work environment. I decided to leave to seek opportunities elsewhere.