1. Phone interview with a senior engineer consisting of a live coding session and technical questions. The interviewer asked only computer science theory questions and the coding challenges were a mix of moderate PHP and SQL. The interviewer disagreed with my implementation of a singleton when my implementation was the textbook way of doing it.
2. Phone interview with the VP of engineering consisting of a live coding session and technical questions. Was asked computer science theory questions and the coding challenges were all "gotcha" type scenarios. One of the PHP challenges he couldn't complete himself, and one SQL challenge had an impractical solution.
3. Nearly a full day of on-site interviews.
Met with the same people as above and 5 others. I realized the culture probably wasn't a good fit for me, but otherwise it was mostly pleasant and a couple people had some really fun and challenging questions.
4. Phone interview with the VP of engineering again to discuss the possibility of interviewing instead for a Devops position.
5. Phone interview for Devops position. Turned out the position was mainly operations and not a good fit.