I initially applied online through LinkedIn. A couple weeks later I received an email from a recruiter to schedule a screening interview. The recruiter was somewhat difficult to work with. It took an additional 2 weeks just to get the screening interview scheduled and completed. This screening the was mostly going over my resume and experience.
2 more weeks later I was contacted for an initial 30 min phone screen by an actual developer. It took about a month and a half to get to this point. The screening was pretty straightforward. I don't remember any overly complex questions. About a week later I was contacted to schedule an onsite interview.
The onsite interview was in their Bellevue office. The schedule was 3 - 1hr interviews with developers and 3 - 30min interviews with Managers and a PM. I arrived in reception and started the day at 10am. The interviewers were nice and friendly. The interviews themselves were more of discussions while solving some coding problems rather than just observing. Questions were somewhat comprehensive, but not super difficult. One question on database design. One question on algorithms, etc. The weirdest thing is they didn't offer me a lunch break nor give me any food for the next 4 1/2 hours. It was difficult towards the end of the day without having any food. I was just handed off from one interviewer to the next within the same conference room. The day ended close to 3pm.
The 30 minute interviews were not very technical at all. It mostly was a question/answer session by other members of the team to get an idea of how they work and the culture. The company is big on hiring people who fit their culture.
It took about a week and a half to extend an offer after the interview. The recruiter was overall helpful, but I thought it was strange how long the process took compared to other larger companies I have interviewed at.