The internship interview process was relatively smooth. The first stage involves a screening interview that lasts about 30 minutes. Questions asked are along the lines of: What do you think about when you are puting together a presentation? Describe some projects that you worked on with a team? What was your role? The next phase includes a semi-rigorous technical interview lasting 90 minutes, by phone. My questions included a range of questions about the Java programming language, including specifics like how to structure try/catch/finally blocks an when to apply design patterns for different situations. There was also at least one algorithmic question about how to recover the original order of a list after its elements had been randomized, but I don't remember details. Finally there were questions about how I would handle certain situations if I were managing a team (a developer is having problems, not contributin, throws team off from target deadline, what do you do)?
After the tech interview, I had to take the "IPATO" test, an "information processing aptitude test". You never learn what your score is, but you do hear that if it is below a certain point, even if the other interviews went well you will not get an offer. This had happened to a few potential candidates. With the IPATO test passed, I then interviewed twice with a project team and from there it was smooth sailing. The internship was terrific, and I'd say that the summer was one long interview for a full time position. At the end of the summer, different product teams and managers would interview interns, usually in an informational style without tests or extensive problem-solving. Interest and background match were more important in these situations.