I applied online and I was contacted a few days later to set up a phone call with an HR person. The call with HR was super pleasant. I've had A LOT of phone interviews during this job seeking process, and she was by far the best I've had yet, so props. It was mostly behavioral stuff, explaining the job, getting my background etc. Then she asked some basic technical questions, most of which you can find on Glassdoor. We spoke for 45 mins.
A few days later I was invited out to Denver HQ for an in-person interview. I was given some options for the flight, and everything was paid for. I was picked up in a super nice car - I think it was an Escalade. Blew my mind. This is the first time I've been flown out for an interview, so I have no idea how normal that sort of thing is.
The next morning, a shuttle from the hotel took me to the headquarters, which was close by. Another HR person gave me a tour of the office, which was really nice and had an amazing view of the mountains from the second floor. I spoke to the HR person for a while, maybe 20 mins. She mostly allowed me to ask any questions I had and to talk about the company.
After I ran out of questions, she gave me a 30 questions IQ sort of test, with 2 pseudocode problems on the back. I answered the pseucocode problems first, and didn't finish all the IQ questions. The pseudocode problems weren't too hard, but I found the logic question part to be challenging because of the time constraint. If you practiced with a bunch of Mensa type questions beforehand, you could probably ace it pretty easily.
Next, I was interviewed by a dev guy that works at HQ. We went over my test and corrected one of my pseudocode solutions. We then went over my resume and experience, and he explained thoroughly a lot about the role and the company, etc. Next, he gave me another pseudocode problem to write out on the white board, followed by three increasingly difficult logic problems afterward. I found this part of the interview to be quite challenging, but the interviewer was nice and helpful and asked questions in a way to guide you through road blocks, so although it was hard, I felt comfortable and wasn't too anxious.
Afterwards, I was taken to lunch with another tech guy and someone else who interviewed that day. Had a good time.
I won't give the logic problems, because a lot of them are on here. I think it's more important to solve them from scratch and explain your logic and demonstrate how you work through problems, vs. just having the right answer. To prepare for this, I would see what kind of questions are already on here, then try to find similar kinds on the interwebs. If you've never done whiteboard problems, I would recommend getting a friend to practice explaining the solutions, or at least write out solutions to logic type problems in a note pad or something.
Overall, I had an incredibly positive experience. I was pretty anxious, but the interviewers did a great job of making me feel comfortable and welcomed. I'm super excited to start!