Pros: exceptionally talented co-workers. good teamwork. one of the best work-at-home policies.
Cons: clients require use of dated technology (winxp! adobe cs5! really?), clients typically don't know what they're buying, company doesn't know what they're selling, the project managers and developers get stuck in the middle.