Pros
Software developers can learn a lot about builing high-performance distributed systems. CTC has some outstanding technologists who have built great systems. Most of the people are sharp and nice. All CTC employees can learn about options pricing. They have a couple required classes and then a lot of optional classes run by a solid in-house education department. (One of the teachers used to be at the University of Chicago's financial math program.) Chicago Trading Company is also one of the more honorable trading firms-- they mostly stay out of shady areas of finance, and traders don't scream at developers. They also offer good work/life balance-- people go home by 5, some even by 4.
Cons
- Software developers have to do a fair amount of support (including the occasional middle-of-the-night call), even though there is a front-line support team. - The company takes unusually long to get off of legacy technology, starting 2nd and 3rd generation applications without fully shutting down the 1st generation application. I think this is because upper management makes a mandate to get off the 1st gen stuff but has no plan about what needs to be done to achieve that. - As of spring 2014, software development is being reshuffled, from a system where development was controlled primarily by the desks to a more centralized development. It might be good to wait until the dust has settled.