Round 1 - Written Screening I was given a question paper set with Java MCQ and fill in blanks. Then interviewer inquired about me and my current and previous experiences. Other than that, few common questions were asked - Why are you looking for change, and then few background about Iris? Round 2 - Technical Interview My technical was scheduled same day after my screening. This interview was taken by a tech lead. The interview lasted for some fifty minutes. Only technical questions were asked in this round and thus it was pretty professional a round. Some of the questions that were asked from me are as follows: Q1. Differentiate between abstract class and interface. Q2. What is runtime polymorphism or dynamic method dispatch? Q3. When you declare a method as abstract, can other non-abstract methods access it? Q4. When do you get deadlock and questions on data race and how to avoid deadlock? Q5. This was a follow-up question of previous - How do you create Immutable class. Q6. Few design patterns questions Q7. Few questions on HttpServelet doGet(), doPost() and GenericServlet service() method. Round 3 - HR interview The HR interview was wholly a resume based round. All the questions were asked from my resume. My Current experience, Past experiences, roles and responsibilities. Toughest situation you had faced and how did you overcome, Toughest technical problem you faced and how did you overcome this, my education my biggest strength. Everything was covered extremely well in this interview. The interviewer was so far the most polite one. I did not feel any pressure while answering the flood of questions.