There was a Codility test that tested basic programming skills. The questions were pretty simple and had way too much allotted time to solve. I'm sure they were there to make sure you know how to code. Accompanying it, a phone interview was scheduled. It consisted mostly of behavioral questions. The person was very nice and accommodating for my schedule. Afterwards, they ask you to come in for an on-site interview, which consisted of 3 separate interview sessions. The first two tested on knowledge of object-oriented programming and algorithms. Read up on classes, inheritance, abstract classes, polymorphism, etc. As for algorithms, the questions were fair and reasonable. If I ever got stuck, the interviewer would gladly point me in the right direction. Definitely practice algorithm questions on whiteboard and thinking out loud. The last interview was a behavioral.