It was a long and tedious process.
1. I had a HR screening interview, where they talked about why I want to join Thoughtworks, about the three pillars of Thoughtworks.
2. I was given a problem (chose Trains problem) to solve in 3 days, which I submitted online within the time frame. Based on the solution I was called to an in-office interview
3. Interview was in three parts
a. Wonderlic and Logic assessment test
b. Social and Economic Justice.
c. Brown-bag round and attending a presentation by a Thoughtworker - The presentation was about Security and Cryptography. To my surprise, the presenter was very wrong about everything. After the presentation, I tried to raise questions about the incorrect things. The presenter was convinced that O(√n) is hard. I tried to convince him that it is sub-polynomial and not really hard. But, he refused to accept. Similarly, he was convinced that the public key in RSA always remains the same, which is wrong in many accounts. If you have the same public, the certificate can be spoofed. There were endless inaccuracies in his presentation. Apparently, my counter argument proved to be the showstopper.
d. Technical Interview - It was not so difficult for me, as I was well prepared.
e. Pair-programming Interview - It was a new thing for me, because I have never done pair-programming and Test driven development before. The interviewer asked me a few questions which I tried to answer with strong technical reasons. He asked me why I was using Iterator instead of foreach and I told him about the ConcurrentModificationException. I told him we could use either one of them for this test. I told him that I want to use Iterator here, because I can be sure of fail-safe and there is no performance hindrance. He argued about my unit-tests being too big, I agreed with him and asked him if he wants me to fix it.
I received a telephone call from the HR that I was not selected because I was dogmatic because I did not accept other's solutions. I tried to take a more detailed feedback about the exact instance where I went wrong, but he didn't have any.
What really put me off, is the hypocrisy? On one hand they have Thoughtworkers who were strongly defending mathematically incorrect suppositions, on the other hand they expected the quality of acceptance. I was very disappointed with the interviewer's response. My impressions is that Thoughtworks expects its interviewees to not ask questions but just to follow.
Be careful of the self-righteous Thoughtworks interviewers !!! You never know