Plenty of variability in company projects. Hardworking coworkers. Easy to communicate with upper management/principles. Extremely competitive 401k contributions. Job security. Good company values.
Cons
No clearcut/clearly defined roles/responsibilities. Decent work life balance. Middle management could be improved. Career growth is limited.