Pros
- Smart engineers at the lower levels - Hard to get fired - Cool work
Cons
- 3:1+ manager to employee ratio - Always hiring managers, always running out of money - Managers always coming up with ethically "creative" ideas - unpaid overtime, unpaid training, discouraging sharing salaries - Waste, fraud, abuse of govt funds - Need to leave or show up with another offer if you want to be promoted at a reasonable rate - Nasty cockroach infested workplace Best thing you can do is get a management job where you have meetings on your calendar all day and ride that out until you retire. If you are a low level engineer you will realize over time that this business exists to take the most govt money and deliver the least quality product in the slowest amount of time to get the next installment. Management will ignore or punish efforts to do more than the bare minimum.