Internal recruiter reached out via LinkedIn. Then a 30 min screening call scheduled with the same person who reached out. Subsequently a 4-8 hours programming task that you can do in your own time.
No deadline was set, and no pressure applied, but internal recruiter did keep in touch to see how things are going. The test was reviewed within a few days and a final interview was scheduled. This interview was remote, because the engineering team works remote.
The interview consisted of 3 half-hour interviews with 3 different engineers.
First interview was in introduction to the company and the system, as well as a review of the code I wrote. Really it was just walking through the code and discussing some of the trade offs I made and how they could have been done different.
The second interview consisted of some questions around networking: tcp, ip, http and then some questions around cloud platforms.
The last interview was an hypothetical debug session, where the interviewer described a problem and you had to ask questions to dig deeper and ultimately find the problem. This was quite nice.
After the last interview there was some extra time to ask questions about the company.
The interviewers were all nice and the interview was pleasant.
I should notice there was very little discussion of my background, or what I have done in previous roles.
I did not actually visit the office in London, as this was a remote role. But also because of the corona-virus lock down, so I don't know if this is always the case.