1. Recruiter emails asking to setup phone call to talk and schedule code test. Call is 30 minutes where they describe Two Sigma in general and the division the job is in.
2. Code test emailed. Same Q's and otherwise posted on Glassdoor.
3. About a week later, recruiter confirmed passed code test. Scheduled phone interview with a team member.
4. Phone interview with team member: discusses in a little more about the department, looks over your resume and asks you to describe your work, asks some canned questions many of which already listed on Glassdoor (thread vs process, how does hashmap work, what is a design pattern) along with some specific questions (explain concept technical concept XYZ you mentioned on your resume to your grandmother).
5. Recruiter emails next day and schedules onsite interview.
6. Onsite is full day of interview after interview with a lunch break. Amongst the many things asked:
a. Behavioral questions: What are you most proud of (not just in work but outside work)? Give me an example of your creativity. On the spectrum of tech vs finance, where are you? Where do you want to be in five years? What is your dream job? What gets you excited in the morning?
b. Technical questions: The minimax problem (a list of 32 integers, what is most efficient in terms of least pairwise comparisons of finding the minimum and maximum of the list), a coin-flip Markov chain process to find the steady-state solution.
c. Coding questions: Code up on the whiteboard how you would parse this CSV file and print XYZ.
d. Domain-specific problems: How would you measure the risk or beta of a portfolio given information XYZ? How would you design a system that receives news from some source and then tells you which assets the news is relevant for in the portfolio?
7. Rejection email two days after onsite. No explanation, no advice, just a one-minute email after you just spent over 12 hours of your life with them.