I applied online, then their recruiter called me the next week. She did a general screening phone interview asking about my background and working experience, etc. Then she scheduled an on-site interview. The on-site interview was in their Markham office and it was about 3 hours long. The first hour was with a panel of 3 interviewers. They asked more details about my past work experience and some technical questions related to operating system. The next 2 hours was a coding test for a multi-threading question in C, which I didn't do well. To be fair, the coding test was pretty straight forward. I solved the problem after I got home, but didn't perform well in the interview.