The recruitment process was a 2-stage process, both in-person and online.
The first stage, an in-person coding challenge, was done at their Belfast office using your own laptop (although they can provide one for you). I estimate about 50 people were invited to my session (probably around 300 people were invited to the challenge over 3 days, with two sessions per day) and we were each split up into groups of 5 people, with two interviewers per group.
It involved three tasks relating to a simple console-based train booking system, the code for which was provided and had to be copied into an IDE. These tasks involved fixing bugs and adding a new feature: 1) preventing too many elements from being added to an array, 2) handling unexpected user input from the console (e.g., entering a letter when you expect a number) and 3) allowing users to book two types of seats instead of just one. You had one hour to complete this challenge in one of three languages, Java, Python or Javascript.
While this was supposed to be done using an online IDE - like jDoodle for Java - nobody was able to run the provided code without errors on the provided IDEs, so we had to use our own IDEs installed on the laptops (I chose IntelliJ IDEA).
During and after the challenge, you had to explain how you were approaching the problem and why you chose that solution. They'd offer feedback during the challenge and would check to see if you listened to and acted on their feedback at the end.
After the challenge, you were free to hang about and ask questions from any of the staff. It wasn't too stressful and they tried to make it as relaxing as possible.
A day later, I got invited to the second stage, the online recruitment centre. This was hosted on several meetings on Microsoft Teams over 2.5 hours, with a fifteen-minute break. I estimate about 30 people were invited to my session (probably about 60 people were invited to the interview over 2 days, with one session per day).
It started with a quick introduction and explanation of how the day was going to go, then we broke off into our assigned meetings, which involved an interview (involving a whiteboarding challenge and typical question-and-answer interview) and group challenge.
I started with the interview whiteboarding first and was asked to either design the architecture of an insurance companies’ website, or the architecture of a recent project that I worked on. They had told us in advance that this was the case, so you had some time to prepare and look at examples of architecture beforehand, and even draw the diagram if you wanted. I clarified during the interview that they were asking for a diagram of how the frontend, backend, databases and so on connect to each other, and they said that that is exactly what they were looking for. They then gave me ten minutes, with webcam and microphone muted, to complete this design, which I did on app.diagrams.net, but could also have been done on Microsoft Word, pen and paper or any other software.
I then shared my screen and explained how each system in the design communicates to one another, and they asked a couple of simple questions on my design.
After that, they moved on to the more typical question-and-answer style interview, and asked 4 questions, like "Tell us of a time in a group where the group had difficulties communicating to each other", and they expected a STAR (situation, task, action, and result) response. They typically asked a couple of questions to get some more detail on my response before moving on to the next question.
I then had some time to ask some questions about the job, before taking a fifteen-minute break. They had allocated 45 minutes for the interview, but mine only lasted 30 minutes.
After the break was the group challenge, which involved six of us, each having a set of 4 cards with a shape and colour on them and using only speech for communication to figure out what two cards (their shape and colour) were missing, but without being allowed to speak the names of any colour. We took it in turns to describe our cards shapes and using "the colour of grass" type of statements to describe the colours, with each of us taking notes (I drew the shapes in Microsoft Paint) of the others' cards, then seeing what shapes were missing which colours. Once we correctly found the missing cards, we were shown which two cards were missing, but also that one of the cards had actually been in our deck twice, which we didn't notice.
Finally, we had a finishing session where they gave some final words and told us when to expect our offers. They said that they were going to give 40 offers, and that they expected around 35 people to accept their offer, which meant that about two thirds of the people who reached this stage would get an offer.
Four days later, I got an offer from them with a salary of £22,000 for a 12-month internship, including 8 weeks of training (12 weeks in previous years).