There were multiple stages after submitting my initial application:
1. A short, initial call from their internal recruiter
2. An informal call with a director who asked about my experience, described the company and discussed company values etc.
3. A short (<1 hour) take home piece of work
4. A live technical test in front of two engineers, where the take home would be looked at, then some additional tasks would be given to be implemented live, Then a presentation on the architecture of a system that I had previously worked on had to be given, followed by a presentation on agile working,
5. The (I assume) final stage would have been focused on company values and cultural fit, though I didn't get this far.
While I didn't get an offer, I did think it was overall a good process. The recruiter was good, giving good opportunity to prepare and I knew what to expect at each stage.