It took about 5 hours. First round was the IQ tests. (ex: given a stack of penny, how do you determine if all the pennies can fill this room) Second round was finding programming errors on the pre-defined questions from the interviewer. You need to explained why there are errors and how to fix it. Next was writing code on white code for C++ exception handling. Then after that, it was the basic math function type question. (ex: given a number 1234, how do you reverse the number in 4321 format without using string.reverse). Next round is programming design.( ex: UML). Last round is with the manger. The discussion includes everything above plus oracle DB problems ( ex: indexes, how to do update to the live db tables etc.) The whole interviewing process is long but not terribly hard.