Awful, drawn out process over three and a half months that I would not recommend to anyone.
Initial call with third-party recruiter to review CV and talk about the process. Standard, no issue.
Followed by a take-home coding test on Codility. I was able to do this in my own time and the recruiter was pretty clear with instructions. Two questions in a 90 minute window, slightly difficult but doable with Neetcode preparation.
Passed this and got put through to the next round. This was set up by a second third party recruiter. Three 45 minute interviews over Teams all in one day; coding, system design and object oriented. These went well also, although there didn't seem to be much communication between the parties as they each asked me similar behavioural questions.
Passed these and got sent an invite to a behavioural interview. Accepted this, and was told by the second recruiter less an hour before the interview that the interviewer was sick, and unable to interview. Unsure why it took so long.
I was then invited to a team/role fit interview by a third recruiter. In this, the interviewer no-showed, and I was sat in the waiting room for the full half-hour. I informed the recruiter, who scheduled in a new slot with very little other communication. AGAIN the interviewer no-showed. This was finally set up a third time. This went fine but I received no apology or explanation for the previous no-shows. I wasn't particularly enthusiastic for the team at this point.
Then I received an invite for a rescheduled behavioural interview from my second recruiter. This went fine also, the interviewer was really nice, but it was clear he had no idea where I was in the process. Also I was unsure why I was still doing the general Microsoft behavioural interview AFTER the more specific team/role fit one, where I was told I had passed the general interviews. I asked my recruiters, who didn't provide much insight, and just told me to continue with both strands. My first recruiter never got back to me.
After this I got an invite from a FOURTH recruiter to do a team introduction call for a different org, within Azure. I received very little detail in advance and was told that this call would clarify the team role etc. On the day of the interview, the recruiter rescheduled the interview time three different times. Eventually I got to the interview and found out there and then that it was a coding test. As in, the whole interview was a coding interview when I was told it was a team fit. After me passing all of Microsoft's previous coding tests etc. This was the first interview that didn't go super well as I was unprepared and caught off guard. The interviewer also took two separate phone calls during the teams call and visibly left the room.
This brought me up to three-and-a-half months between my initial application and this most recent call. After passing the initial coding interviews, the feedback from recruiters on a consistent basis was that I had passed, they were drawing up an offer, and just trying to find me a team. Eventually, after all that, I got a rejection email.
All-in-all, from the initial recruiter call to the final Teams call I did, I set my time aside thirteen times over three-and-a-half-months. This included a last minute cancellation, two no-shows, and three reschedules. I only put up with this because I was told pretty early on, after the coding/system design/object oriented interviews, that an offer would be drawn up and it was a matter of finding a team. This was continually told to me until I finally got the rejection email.
Clearly a mess of organisation between Microsoft and their third party recruiters is the fault of most of this. But additionally some behaviour from the interviewers themselves, such as no-showing, taking other calls and communicating badly also made it worse. My initial interviewers were very very nice but it got worse as the process went on. I would not recommend this process to anyone.