Typical big company process:
1) Recruiter screen - nothing special
2) Technical phone screen - one question, it is one of the ones tagged on LeetCode for Lyft. I had seen it before but even if I didn't I think I would've gotten it (Leetcode medium difficulty)
Everything was smooth up to this point, but then I got transferred to a different recruiter. He dragged his feet a while, they told me they weren't sure they were having a hiring freeze or not (this was during the COVID lockdown), but eventually we got an on-site on the calendar. Then two days before the on-site, they cancel it, and then the news about the layoffs came out. So at this point I thought it was over, but then another recruiter (maybe my last recruiter got laid off?) contacted me and said they still wanted to give me a virtual on-site. So that eventually got put on the calendar after a delay.
3) Virtual on-site: 4 rounds. 1st was the algorithm coding round. Another problem tagged on LeetCode. I finished it early and the interview ended 20 minutes early. Confident so far. 2nd was the system design question. Nothing too crazy, just designing a simple backend for a donation website. I thought I did well here, although the interviewer seemed a bit disinterested, his wife/significant other was walking around in the background (he lived in a really small apartment), and he didn't seem to happy about the team he was on when I asked questions at the end of the interview. 3rd was the laptop coding problem, this is where I think I didn't quite pass. It wasn't a terribly difficult problem, it's just a LOT of code to write - especially comparing it to the algorithm interview. Considering I finished the algorithm interview 20 minutes early and could not finish the laptop interview in the hour provided tells me something is really off about their interview process. The problem is split into checkpoints - the basic functionality, the advanced functionality, and what I interpreted as the "stretch goal". But I finished the advanced functionality and did not finish the stretch goal, and I did not get an offer. So maybe it's not a stretch goal and more of a requirement. If I had more time I could've finished it, but alas I guess I just don't code fast enough to work at Lyft.
After the on-site, it took them a long time to get any feedback to me (2+ weeks). My last recruiter was really hard to get in touch with. But after that big mess of 3 different recruiters and canceled on-sites I just got a simple "we are not moving forward" without an explanation. The process took almost 3 months total. The whole thing was just chaotic and frustrating.