Pros
Money is good. Ways of working are good.
Cons
The work experience depends entirely on the client you are working with. If you are lucky enough to work with a cool client, then it's amazing. But if you are not sure about the client, and decide to give it a try to see what happens, and later if you regret your decision, the leadership will not let you change projects (or roles) easily (like ThoughtWorks says during the recruiting process). And the worst part to me is that ThoughtWorks prefers hiring new folks, rather than promoting internal employees. I used to be part of the recruiting team, but I quit this role because I was being forced to run interviews to hire outsiders for a position that TW was denying to me. Since I joined TW, all my performance reviews have exceeded expectations. Besides that, I have received several feedbacks from the client itself and from different leaderships (ThoughtWorkers) that worked with me. I have all the evidences and feedbacks listed in the software used by TW to measure the employees' performance. And ThoughtWorks doesn't care about it. I am stuck at my current level (Mid-Level) despite performing (and being treated) as a Senior. In my last project, I played the Tech Lead role; I was chosen by the client for that position, yet TW did not promote me. I accepted the job at a Mid-Level salary because I was afraid of being fired for refusing the opportunity, as happened to some of my friends. If you decide to join ThoughtWorks, keep in mind that recognition is not as fair as they say in interviews.