An initial phone screen with a recruiter comes first which is fairly relaxed. Mostly this is about gauging your interest for the position and letting you know what the interview process is like. The recruiter will then schedule a one-on-one technical interview with another engineer. This is a screening process meant to stop any subpar applicants from reaching the next stage. The technical question is not all that difficult - a simple algorithms question. Following this, the recruiter will schedule 4 interviews in series. Each interview is an hour long. In my case, 3 of the 4 interviewers were members of the team I would join. These are all technical interviews but the first third is usually a “get to know you” session where the interviewer is gaining information on whether you’ll be a fit for the team.
Following the last round of interviews, I had to wait a good month before I finally got an offer which is unusually long. I got a verbal offer at this point and was told the real offer would come the following week. Three months passed following this verbal offer with the recruiter continually pushing back the date of the real offer until I was eventually ghosted.