Pros
Good pay with fully compensated overtime, great benefits, fun coworkers, relocation opportunities (not necessarily where you might want, but a positive experience if you're open minded), and management that cares about you as a human.
Cons
Working as an IC is technologically stifling. Although "software development" is the closest description of the job, it's hardly in the way you would think. The work is primarily adding values to SQL tables via the product GUI, in order to change the functionality of the core product. There is hardly any coding and no work with data structures, algorithms, or architectures unless you are in a developer position on the core product at Denver. A person with a single semester of a computer science class is adequately qualified for this position. Hardly any transferable skills will be learned, as nearly everything is proprietary. If you make a list of all the "worst practices" you can think of in software engineering, this place has them: no unit testing, spaghetti code, aged architecture (it's .NET, and not even the good kind: it's Visual Basic), severely lacking documentation, and technical debt out the ears. Almost unbelievably, it still works, so management isn't going to change anything soon. If you decide to leave FAST, you're gonna be starting back on square 1 in the job market. This issue is compounded by hiring mostly new college graduates; they don't know any better, and they are trapped at FAST because they have stagnated technically. Unfortunately, the work doesn't compensate for this by being interesting. It's certainly an interesting field with a high-stakes product handling literal billions of dollars, but the daily grunt work is tragically monotonous.