The interview process for ThoughtWorks is something that I have not experienced at other companies. I handed in my resume at Grace Hopper and pair coded with a few engineers before they reached out to me for an interview.
The first step is completing one of the three coding challenges they send you in any language you choose. I didn't write any tests for mine, but the code worked and I was moved on to a non-technical phone interview with a recruiter. We discussed the company culture, how I felt about pair coding, how I felt I fit in the technological world. This interview really got at the core of who I am as a person, and on the phone I was told I would be scheduled for an onsite in the next few weeks. The recruiter sent me a questioner which I filled out and returned. It had some fun questions about what I would do if I was president of the world etc.
I had my onsite in NYC with a few other candidates. It was two days, the first day consisted of tests, a group dialog, and a game. The second day was all interviews with the various teams.
The technical questions were not too hard, its mostly logic and reasoning skills. The most interesting interview was definitely the values interview, during which I spoke about some of my answers on the questioner they gave me, and had some spirited talks about education, underrepresented peoples in computing, and ways I'd overcome difficult situations in my life.
This is a company with a strong social justice mindset, and if that doesn't seem to align with you this may not be the place you want to work.