I had three interviews. The first was a low stress phone interview where I was mostly asked about my background and why I liked Computer Science. I was called back the same day and asked to come to an on site interview with two team leads.
For the second interview I was asked about projects I'd worked on and various OO questions. I was then asked to write some code on a whiteboard. In this case I had to write a function that would take in a string and determine whether or not it was a palindrome. I could use any language I wanted and I was told they weren't concerned about it being syntactically correct as long as I could explain what I was doing.
I was then called back for a second round of interviews, this time a with two different teams. This interview went pretty much like the first, with more questions around past projects and OO programming. The first team asked me a very difficult question about quickly accessing data for an autocomplete function. I eventually got to the correct answer but not without lots and lots of hints. They later admitted that they usually don't ask entry level candidates this question. The second team asked me to write a function that would take in an integer and return a word (e.g. pass in "23" and return "twenty three").
I didn't think I had done that well with the second interview so I was very surprised to get a call with a job offer later that day.