Pros
Very flexible with work at home options. Opportunities to work with the best in the industry. Excellent on line/virtual classroom professional courses available for all employees. I've had excellent growth experiences working on smaller start up projects which have provided invaluable experience.
Cons
Too much red tape hinders decision making. Too many middle managers who do not understand software development or developers. It is very difficult for non-technical employees to get good raises or promotions. There is no identifiable corporate culture in the software group and people are given assignments rather than put into growth or career positions for the larger projects. Senior management determines schedules and scope and does not understand appropriate project management methodology which leads to lots of weekend work to accommodate already compressed schedules.