Applied online and was contacted by a recruiter a week later. Had a phone interview the next week, where the interviewer asked a little bit about my past experience, a few language specific questions, programming concepts/data structures and then gave me a coding assignment to mail back in an hour.
Received feedback within a few days that they wanted to bring me onsite for an interview, but that was around the holidays, so we didn't schedule anything until after the holiday season. I prepared for the interview by going over the links they provided (topcoder.com, etc) and dug up my old college course notes. When I got there, I had 5 interviews and a lunch. Had to write code for all of the interviews, but the final interview was more high level and pseudocode was allowed. (The other interviews all required syntactically correct code). The interviews all took the same form - asked a little about something on my resume, a code question, analysis of your solution (big-O, etc) and a design-type question. There were no brain-teasers or trivia questions.
The one thing I did not like about the interviews - but am not at all surprised at - is that they aren't too interested in selling you on the company or helping you find out what working there would be like. None of the interviewers bothered to tell me what they did, what group they worked for or what their title was. I barely had time to ask any questions and almost felt like it wasn't important to some of them to leave room for me to ask questions. I ended up asking the recruiter all the questions after the interviews were over.
The recruiter kept me informed throughout the process when my application passed from hiring committee to executive hiring committee. The total turnaround time from onsite interview to offer was less than 2 weeks - which doesn't sound as long as some of the other experiences posted.
Advice to anyone interviewing: know your stuff. If you don't have a solid knowledge of fundamentals - start studying. If you don't know how to analyze the running time of your algorithm - go learn. If you don't have experience coding - practice.