I applied through their website and got an email 1-2 weeks later to schedule a phone interview.
The phone interview was mostly general OOP concepts, data structures, and c++ language (the role accepted c++/c#/java). Some questions on multithreading and network programming. They emailed the next day to schedule an on-site interview for the following week.
The on site interview started with HR for about 1/2 hour, which asked 5-10 general personality questions.
This was followed by two one-hour sessions each with two team members. Team members would start with some small talk and discussion of your resume/experience. About 30 minutes in, I was given a small programming test which could be implemented in any programming language or pseudocode.
Not only is it important to create a working solution, but team members were extremely interested in code efficiency. Even after I thought I had found all optimizations, they were prodding me to find others, which I often did find, but not always.
After this, I was given 45 minutes to complete a programming exercise related to options valuation. The exercise itself was not hard, but completing it within the time limit was. Additionally, there is no ability to explain what you did or would have done. No one reviews it with you later, they just take your work and look at it on their own.
Overall it seemed like a good company and a fair interview process. Staff were friendly and intelligent without having attitudes.