- Constantly must look for work at work. Your time must be funded by various projects and it's your responsibility to find them.
- Funding model doesn't allow for very solid software development work. Since funding arrives in dribs and drabs, most projects begin as prototypes and never end up being engineered very well.
- Software engineers are second class citizens compared to scientists. Software development careers tend to top out after 10 years of so, unless you switch into management.
- Forced into a network-only health care plan -- Anthem Blue Cross/Blue Shield. Not too impressed with them.