First there are 3 phone screens. The first is with the recruiter, just basic questions about the resume and whatnot. The next one is with the hiring manager, and the last one is with someone else on the team. The last 2 interviews are highly technical, and there isn't a good way to prepare for it. If you pass that, they invite you on-site. There, you give a technical presentation, then if you move on, you get panel interviews. They had told me that I got an on-site interview, sent me my schedule, then rescinded my invitation. That put a sour taste in my mouth about the company.