You must first submit a code sample from a previous project. I spent a long time on mine, others I know have simply picked one of the challenge puzzles from previous years and completed that in an afternoon. If one of the managers finds your application interesting, you will get a phone interview where they will describe the position and ask you about your experience.
The next round is in-person interviews, wherein I was interviewed by a few of the people in the group, talking about the project, how you might approach the problem, and the company culture. Then they give you a programming puzzle to solve there, as well as some time to talk over the problem and ask questions. Then you get cracking. Don't get too nervous, focus on getting a naive implementation done first and optimize when you are done. Your goal is to show them you know how to approach a programming problem.
They then ask for references. They got back to me two weeks after the interview.