Before their onsite interview I actually accepted an offer from a better company (by glassdoor rating of course), but I didn't want to cancel my interviews at the last moment and decided to show up. Well, this was the most disorganized interview that you can imagine.
But let's start from the beginning. The phone interviews was organized pretty well, behavioral interview + hackerrank with a simple binary tree question. Good so far, pretty similar to what other companies do. Then I was invited onsite where the worst things happened. Ok, they didn't reimburse any travel expenses and provided only a cold burrito from a food track instead of a lunch. This wasn't a big deal.
The biggest issue was that they practiced REMOTE ONSITE interviews. You think remote interviews would be like phone interviews? Not quite. A remote onsite interview is when you are given a laptop without any apps, you need to share your screen and type your solution in a basic notepad. No ide, no hackerrank/coderpad, just a basic text editor with screen sharing. And the problem description is screen shared too, you need to copy it by looking at the screen and manually typing it in your editor. The funny thing is that they know about hackerrank and other online editors, they use them for phone interviews, but for onsite interviews we have to go back 15 years in the past and use screen sharing.
My first 2 interviews were exactly like this, the worst interviews possible. At least 2 other interviews were in person and they were much better.
Round 1, remote. The interviewer acted like he was the smartest person in the world by saying "I could ask you to implement a red-black tree, but I will ask you a real-world question". Well, Google and Facebook never ask people to implement red-black trees, so if he wanted to call out these companies, it didn't work out. As to the real-world javascript question, see the hello world question below, very similar.
Round 2, another remote interview. A lot of java and behavioral questions without any clear structure. After 30 minutes my laptop battery died because the interview coordinator forgot to give me a charger, lol. At least the video call still worked and I could talk with the interviewer, but unfortunately I couldn't continue their innovative idea to screen share my coding process in a notepad.
Round 3, in person interview. Here I had to mention that I had seen this question before , but the interviewer was ok with this and asked just to write the solution on the whiteboard and move on to the next question. Though the next question was very common too.
Round 4, third remote interview, at least this only 30 minutes, wasn't as bad as the first 2 interviews. Java language questions, mostly about standard collections.
Round 5, in person interview. Something like a system design interview, but OOP design as well. So not as good as other companies ask.
In conclusion, this was my worst interview experience. Maybe they try to make their process different from other SF Bay Area companies, but remote onsite interviews aren't the right direction, such interview types shouldn't exist.