Started with a phone interview with HR. Things were really unclear, the initial email reflected the position I applied for, but the phone interview reflected a different position. I told them that I'd only like to be considered for the position that I applied for. They said okay, and moved forward with the interview process.
The next step was a take-home assignment that involved clustering/classifying tweets. It was sent to me via email, yet the email indicated the position that they would be considering me for, instead of what I originally applied for. When I asked HR about this, they essentially said that it's easier to configure their backend software for one title rather than several ones. Regarding the take-home assignment, it was easy if you knew about NLP and data mining, but would be hard if you didn't. Took me 3 days. Submitted my solution, and moved forward to the in-person interview.
Their in-person interview wasn't easy, but at the same time wasn't hard. I feel like if I studied more for technical interviews, I would've aced it. There were two interviewers. They both seemed to care about the process, but from one of them I got a shady attitude.