This was for the data scientist/business analytics role.
a little background on me: I just received my bachelors. I do not know if what I say will necessarily be applicable to people in a different situation.
Starting from the beginning: I applied cold with my resume through their website. Then there was an optional coding question. Pro tip: Do it.
The question was a bit more difficult than your average weed out question. The question was a game theory - esque question, e.g. "given these rules of a game and a starting point, tell me whether player 1 or player 2 will win". They gave me 2 hours for the question. I spent about 45 minutes thinking/writing code (final solution was about 25 lines of python code, the idea was the tricky part), then 15 minutes commenting code and trying to make it look pretty. Another pro tip: The question is timed. try to finish as fast as possible while still giving a solid solution/explanatory comments.
Within a few days (maybe one or two) I was contacted by a Facebook recruiter to set up a a phone or 1:1 onsite interview, I opted for the phone interview. The recruiters are awesome/responsive. If they're not responding they're likely in meetings, don't fret. You will be talking with the recruiters quite a bit. They set up phone calls with you (not interviews) just to get a sense of who you are throughout the process. Be friendly and convey your excitement.
The phone interview: It was not crazy difficult for me. There's obviously no hard tips I can give you aside from 1) try not to let the phone go silent, always be telling them what you're thinking about, even while writing code. Justify it line by line, this way if you mess up along the way they can point it out before you dig the hole too deep. Then again, don't expect them to point out every error you make. 2) Expect a mathematical question. It won't be some stupid straight coding question like "reverse the words in this string".
This interview was a while ago, but i'll try to recall the general structure of it. They ask you some sql like query questions. I didn't know sql, so I answered in python. They asked me to code the question in a shared doc, then after I got the right solution they asked me to answer (verbally) a mathematical elaboration of that question. This elaboration lead into a discussion, and then questions from my end.
Soon after I was asked to come in for an onsite interview. It was a greet with my recruiter, then 5 interviews with no break for lunch (which I would recommend). The interviews were a lot of fun. It was 2-3 data science type of people, a product manager, and a staff data scientist.
I signed an NDA so I can't tell you what they asked me but the recruiter will tell you the general type of questions they ask. Some questions involved writing code, some didn't. All of them felt like a discussion. (e.g. I offer an important component about answering the question, and they say "but what about this case where your component doesn't help?" and you iterate.)
They work heavily with sql, but they don't count it against you if you don't know it. Use whatever language you feel most comfortable in.
Tips:
Don't be nervous. Smile, I can't say this enough. If you act like you're being shot at it will make the process painful. I even made a few jokes and so did my interviewers. Don't be afraid to laugh, this isn't an interrogation. If you're excited about the job, they'll be able to tell. Don't beat around the bush/avoid questions. I had 10 minutes left in an interview and my interviewer asked if I wanted to stop and ask him questions, I said "no, I like your questions, let's keep going". That kind of excitement will shine through and make the interview feel natural. Just keep calm and keep it conversational. Ask for clarification on a question if you're even slightly unclear about the problem. Try to keep talking/express what you're thinking during the entire process. Also, be creative, they're looking for that.
Most importantly, try to honestly convey your passion/excitement for the job. These guys love their job and want to see that you will too. That being said, don't fake it. Your interviewers are ridiculously smart so you won't be able to fool them.
Good luck!