Interview was pretty straight forward. If you have a good programming background from working in personal projects or Open Source you'll do fine. I also recommend "Cracking the Coding Interview" book, there are some good questions there.
There are 3 rounds of interviews. Here is my experience
I received a phone call for around 20 mins. It was about C++ although the position was mostly about Python and Java. Not sure why they asked me about C++. I answered as best as I could and after the phone call I received an email about 2 mins later saying I got passed to the 2nd round. I honestly didn't think I made it since I answered horribly (In my opinion).
Second interview went smoother, it was a Python programming exercise via Skype, it took around 1 hour in total with answering problem and asking the engineer questions about SnapChat. Don't worry, if you know Python you'll do fine. About a day later I got an email saying I got to interview in person and they flew me into LA to their HQ. They paid for the flight and hotel which was nice.
Third and final interview is a whole day kinda deal, the engineers beat you with problems and pick your brain to see how you think. Questions were average and I answered all of them(with the exception of the final one which I failed miserably). They also have you hang out with an engineer during lunch to see if your a culture fit, the guy I was with was pretty cool.
About a week later I got the email that I didn't make it. Oh well.