Phone screen, followed by a very difficult 3hr take-home algorithms test, then an all day onsite project which mixed a difficult algorithm question mixed with system design ideas. Definitely the most difficult of the interviews I have done, especially algorithmically. The onsite gave a good sense of the kind of work and expectations they have of their employees.