Pros
I worked 8 years as a software engineer in Financial Engines. During these years, this company has gone through two major waves of technology revamps. Each time pushed FE towards more modern tech stacks in both front and back ends. All four engineering departments -- Consumer Products, Platforms, Tech Office, and Tech Ops have passionate and bright people who constantly bring innovations to existing technologies. Company has a relatively flat structure. Individual contribution is highly visible. We have interns working on explorative projects, and these projects went to production after a few polish. We have both junior engineers and senior architects who brought what they learned in their previous companies and made real impact at FE. Currently, the company is continuing the 2nd wave of revamp. The technologies FE is transitioning into are quite exciting, comparable to those used in some unicorn startups. The people are friendly. Team feels really like a team. New office is nice. The CTO is awesome.
Cons
Like all companies, FE has legacy code. Adopting new technologies and getting familiar with legacy code could sometimes be daunting. The domain knowledge is very deep. Take years to grasp. Life-work balance can be an issue occasionally, depending on teams. SCRUM is getting a bit out of hand -- Engineers wear too many hats, and thus don't have enough time to code. Not many lunch choices around the office. Local traffic during rush hours can be heavy. Brand is not well recognized.