The full interview process has four stages: first a debugging quiz, then a phone screen, then a programming project, then an on-site interview.
The debugging quiz is looking for simple off by one errors, memory leaks, etc. They don't give you anything insanely complicated, just some 10-15 line functions. The phone screen is pretty typical, based on my experience they don't ask you for anything beyond what someone qualified for the job should know.
I got to the programming project which I can't say too much about because they make you sign an NDA. It was a 6 hour project which didn't involve any specialized knowledge, anyone with a programming degree or equivalent experience should be able to implement it. Whether or not you can implement in time however is another question, and unfortunately due to poor time management on my part I was not able to complete it.