The whole interview process was conducted remotely.
The first stage was having a 30-minute phone screen with a recruiter at Xero where I was asked what I'm doing in my current role, why I want to join Xero, and also why I want to leave my current role etc.
The next round was a pair-programming exercise with three of the engineers at Xero, lasting around 90 minutes. I downloaded a given code-base beforehand into my preferred IDE and I screen-shared it with the interviewers during the session, where I was asked to refactor and improve the quality of the code present, as well as keep in consideration of how to keep it maintainable and extensible.
The next round was a behavioural one where I talked with a couple of Xero engineers on my past work experiences and what my core values are in my day-to-day work.
Overall, I was very happy with the interview process itself, as all of the interviewers were very friendly and communicative during the sessions. What put a bit of a damper on the whole process was the fact that the time to schedule the interviews and to get back to me about an offer took a little over a month in the end from when I first submitted my application, and this was a contributing factor of why I had to decline them in the end as I already had other offers on hand that have waited for me for a while already.