Pros
It's the most famous Investment Bank in the world, so you're so proud to work inside. It's not a typical high-tech company which you develop one huge project after another. You're mostly maintaining its huge database and complicated software systems. So you won't need to always stay up late at night trying to finish the project. However, the database is so huge that even maintaince and performance improvement is a significant job. The company is best for you to develop skill in database system and distributed/network system since it also operates database in London/Tokyo/HongKong, which is quite magnificant. It's using a lot of different languages so you won't bored down by using only Java/CPP all the time or just doing web programming. Also, all the works are done in teams, so there's always someone to back you up if you're screwed (cuz it's financial company, if you screw something very important, it probably means millions or billions of lost to the company, scary). It has many many departments, so if you're bored with one department, you can switch to another department and get some fresh works. There's no programmer tester here, you're responsible from development to testing if you're developing a software, that's pretty challenging.
Cons
Like I said it does not have many research and development projects, so it may not be a good place if you're a R&D type of person. The software they use are pretty losely organized and not documented very well. When I start to work there, I found it so hard to find a useful documentations for their internal languages and interfaces and I end up asking my managers a lot. Also, because I'm in the tech department and most of my job is supporting the trading they're doing, the project I get is mostly supportive, so you don't receive practise in Software Engineering a lot.