The entire process took about a month. There was an initial recruiter screen, then a take-home assessment, then a meeting with two engineers to go over that assessment as well as some more live coding. I then had a 30 minute meeting with the CEO, which seemed to go well. Other reviews mentioned that he seemed distracted or uninterested during the interview, but I personally did not experience that. I was then flown to their Redwood City office for a final onsite 2 hour interview where we had a getting-to-know-you chat and then dove into critiquing a design and asking questions as if I were the person leading the implementation of it. Then I was asked to implement a part of it as a final test. I did end up completing the exercise. I waited about a week, and ended up not getting an offer. Overall, it was a decent experience. I never felt anything negative up until the very end when all I got was a boilerplate email that I didn't get the job. I mistakenly thought I did well on the final interview, it's often hard to read how you're doing in the moment. I asked the recruiter if there was any other feedback on my performance, considering the overall time and effort I spent on the entire process, but never got a reply. I understand behavior is pretty standard for the industry, but that doesn't mean you have to do it that way. Now I'll never know why, and I can't glean any learnings from spending all that time.