I met a head of department at my school, so I could skip the phone interview and online tests. I had 2 interviews in person with 2 interviewers (to choose which position is suitable for me). Then I was called to come to final assessment day, which includes a group activity and 3 consecutive interviews with 3 people. The first guy was crazy because he misunderstood my study and research, then asked some questions that not in my study. That made me lose my calm. After that, he gave a lot of question about polymorphism in Java which I could only answer about 60%. He seemed try to attack my weakness and skip many other aspects. The 2 others interview were much better, they asked questions about many aspects (interitance, linkedlist, C++ vs Java, heap memory) but always have hardest questions about coding, I could only give simple algorithm to solve the problems instead of the optimal code.