Basically first technical interview with general questions about memory allocation, gameplay stuff, smart pointers, general stuff. After this interview, they send you a technical test that is to the point and to see how you approach problems. Third interview is an on virtual site one that takes all day until afternoon from morning, that will let you meet the team, live coding session, and another technical interview. After asking for a day in your job for interviewing with them, other companies just divide the interviews in various days, I think that is more respectful, and after they see your skills with their coding test, you receive the message that another candidate fits better xD maybe that guy looked at something that they asked 5 min before the interview and he/she got the job... My personal opinion is that there are talent that they let go just because maybe you don't have your day for the interview, or you are nervous lol In a normal work day, everything is different, and you can get to a solution much better. I found it very disrespectful.