First, you are contacted by a technical recruiter who will go through basic, common interview and application questions, like "Tell me about your experience," "Why are you looking to join Target," "What compensation expectations do you have", etc. Second, you will have an hour long interview with a more senior or lead engineer who will ask questions around the technical specifications of the role and your experience related to it. Third, you will have a ninety minute interview with another more senior or lead engineer who will do a pair programming exercise with you, where you are given a mock application that has unfinished features or bugs. Afterwards, you will be asked a variety of technical and experience related questions. Fourth, you will have a forty-five minute interview with a manager who will look at more soft skills. Fifth, you will have a panel interview with technical questions. In this interview, you will have a coding exercise that is a "gotcha" question. Research has shown over and over that "gotcha" questions show little to no indications on how good an applicant is because the situation would never occur in a real life setting, the interview is already nervous as you who people staring at the applicant as they code, and the "gotcha" question has no context to the business' processes. I did extremely well in all interviews except for the "gotcha" question because it was botched and did not even reflect a real data set that could occur in programming. My advice is that if you are given this question, tell them to give a more realistic coding exercise, or the interview is over.