Pros
Projects with small durations compared to other service companies, So you get an opportunity to work in multiple techstacks in a short duration. Pair programming - if the project is good.
Cons
No job security They always send emails saying the companies revenues are less than expected and there could be/was a lay off, which makes you sick There are good managers and worst managers, so your work life balance and peace of mind will depend on the project and people you work with. TW ingrown people are too geeky, no real connections, you can only have colleagues from thoughtworks, and no friends. In every other organisations I have worked on, I eventually had at least 2-3 colleagues whom I can count on and who become friends, but in thoughtworks it is very different, people in a team almost never discuss anything personal, nobody even knows your phone number or contact you over phone. All communications are only through gchat. Teams struggle to keep up the team spirit as team members are from different locations, and only have formal communications with each other, so there is no real connection with people in the team. There are few toxic managers, who goes behind only money, and they force you to work, even if your skillset and what you have signed up for is not at all in alignment with the actual work.