The process started with an online coding test (standard HackerRank questions).
The next stage was a phone screen with various questions on my experience, Java and REST.
Once I got through this I attended the onsite interview. This was made up of a one hour system design question, one hour coding test and 30 minute behavioural test. The system design was pretty standard. For the coding test I had bought my laptop as I was told this would be a collaborative coding assignment similar to what we do day to day. In fact it was a standard coding assignment, coding on someone else's laptop and to find the optimum answer no match the processing cost (which is a bit unusual as normally it is the processing cost which is optimal. For the final interview I assume he had spoke to the previous interviewers as he turned up late, only asked me two questions and showed no interest at all in what I said. Then finally he abruptly left me a reception to exit the building myself instead of showing me the way out, which I thought was quite disrespectful.