I applied around early December and got an email to talk with the recruiter. This seemed fine and was a standard get-to-know-you call (what's your experience, what are you looking for, etc).
Then you're given a choice of an hour-long coding session with an engineer, or a take-home assignment which you can submit which then you can discuss with the engineer. I opted for the take-home so I can carefully craft a solution with nuances and then have a very high-level and productive discussion with the engineer. The take-home assignment is literally just taking a very simplified architecture of their business model and to implement an router algorithm to minimize cost for order items going to pharmacies. I submitted my work and had a good interview with the engineer (she noted it was the most through submission she saw for that exercise). After that we talked more about what it's like to be an engineer at the company and the workflows and tech stack, etc. The recruiter got "swift and positive" feedback.
Then I was given 5 hours worth of on-site interviews. The recruiter gave me a syllabus and I was told to "ask very high level questions" and to be inquisitive because that's what they were looking for. Being that I am interviewing elsewhere and currently employed (and being so close to the holidays), we were forced to break it over two days (and only two days after my last interview with the other engineer). But I only needed one day to have the process end.
The one day of onsite had two back-to-back interviews. First was a coding challenge. Although I was asking what certain edge cases could possibly fail and what the best structures could be for the solution, the engineer told me to "pick up the pace" and to optimize for time, which I took as a negative sign because I pushed back and asked if they were just looking for someone who can mindlessly push out code without thinking about it. To the engineer's admission at the end, I fulfilled the test cases to satisfaction, but I voiced my displeasure at the engineer's attitude and handling of the interview. The question though somewhat resembled business logic they'd face in their platform so that was nice. However, he also only gave me 5 minutes to ask questions (which is not enough time at all. Remember, I'm interviewing them as well)
Second interview that day was a roleplaying exercise with the engineering manager, where you're only given a very high-level diagram of the company's technical architecture, and then given a random prompt of a bug happening on production and trying to figure out what the problem is. The problem statement was along the lines of "there's a user that is experiencing a slowdown on a certain page". The answer was eventually there was an open transaction that needed to be closed, but that's very hard to get to the conclusion because you don't know what logging they have and you don't also have access to the table structure in the DB. It came from a bad DB patch, which I was able to identify was something that should have never passed code review but admittedly I wasn't able to connect the two in time. The format was intriguing however, and I may use it in my own interviews in the future, but I think it wasn't handled well on their end (as my commentary on their development processes and red flags I raised that led to the issue ended up being disregarded. Remember, I am also interviewing THEM). Again, they only allotted for 5 minutes at the end for questions (that's what they planned at the start of the interview, it wasn't a timing issue).
After that I got an email from the recruiter saying they would not move forward with the rest of the onsite, in which I then detailed the rest of my grievances with my experience with the onsite. The other three interviews would be DB/System design, peer review, and then an interview with leadership.
The onsite is not structured well, but the take-home was fair and allowed to showcase my engineering experience and the recruiter was nice throughout the process. The engineers for the onsite were pretty problematic in their execution, however.