Pros
Good benefits & pay Not a lot of pressure to get things done Nice office/campus Free rent for 5 months Get paid to do pretty much nothing all day This was my first job out of college as a software developer. They have a training program where they send you to North Carolina for five months to learn about various technologies and to work on a "real life" project. About halfway through the program you get notified of the actual team that you'll be on when you return to your job site. You have some input with this, but the decision is ultimately made by management. The program itself isn't too bad. I learned about a lot of technologies that I hadn't heard of and it gave me a little bit of real world experience.
Cons
Work non-existent/not challenging Office is located in the middle of nowhere (Texas) Old fashioned attitudes Not a lot of young people unless you work in the call center Old technology Too much bureaucracy The downside to the training program is that the team that you get placed on is very hit or miss and very much or if your control. Some people were placed on awesome teams working with cool products and technologies while others were stuck working on software that was 20 years old. Also during the training there are a lot of B.S. corporate events/talks, which were super cheesy and unnecessary. Some of the topics during training were a waste of time too, like learning how to write an e-mail (yes, I'm serious). The team I was placed on seemed to have no plan in place for me when I got there despite the fact that a manager has to request an associate from the aforementioned training program so it's not like I was placed on their team by surprise or without their knowledge. The whole time I was there I wrote probably a total of 20 lines of code because the product was in maintenance and there was very little new development. There wasn't really any work for me to do, so I essentially got paid to read reddit all day. There are tons of meetings to attend and most of them are just people from various teams/business units arguing over minute details about random aspects of a project. The amount of red tape that you have to go through to get things done is pretty high.