Had the initial virtual technical (~1hr) and then virtual onsite (3 interviews back to back, total 3hrs). It seemed like everything went well but then they asked me for references and to do another hour technical. I sent my references over and completed the next technical. They were my top choice - I enjoyed everyone I spoke to. But the final additional interview was odd. I had other offers waiting, so I thanked them for their time and withdrew due to accepting another offer. This process spanned roughly 2 months.