Pros
Lot of potential to work on large projects, intelligent people, abundance of technical resources, education assistance, some what of a flexible schedule (depending on manager). Paid overtime.
Cons
No transparencies on how to be involved in more of a project level. As junior engineer, mostly pigeon holed doing one or two tasks. If you have a field experience, will be sent to the field every chance there is. Not enough work sharing involved in the department. You will see certain people are constantly busy, and others have trouble finding billable work. Inconsistent performance reviews. Out of 4 years, only had 2 reviews, one which was in person and other was through the website. Saw a lot of brilliant people leave within the first 3 years after college graduation due to lack of communication between direct manager and junior staff, and unwillingness to provide professional growth. Overnight work is not billed at a premium rate, and expect to be in office next day. Lower pay and raises compared to the market.