Two interviews and a very diificult technical test. The two interviews were a non technical interview, followed by a very technical interview. If you passed those than an aptitude test was conducted. The second interview you are asked a series of programming and technology questions and are expected to respond from knowledge or memory.