Pros
Laid back atmosphere. Specific to engineering department: Within reason and depending on your team you can come in when you want and leave when you want as long as you put in your eight hours. There are many talented employees who want to make an impact.
Cons
The engineering department is set in it's ways in many respects. They recently did a fairly significant reorg that is a step in the right direction, but there is still a decent amount of bureaucracy. Upper management has a desire to iterate quickly, as do many employees at the individual contributor level, but middle management has a desire to cover their behind with a preference towards being perfectionist and with an insistence that every bit of work be analyzed to death. There are a couple sub-departments -- devops, product -- that still seem to be forming and are somewhat lacking in direction.