After applying online I was sent a 3 hour online programming test (hackerrank). They only offered it in selected languages, which were (i think) C, C++ or Java.
This had 3 questions, two of which were quite easy (see leetcode easy). The final one was more difficult (see leetcode medium).
Next was a phone interview to discuss why you want to work at optiver and to serve as an opportunity to get to know you.
Next was a 90 minute psychometric test (numerical and analytical).
After that was an invitation for an onsite interview. The onsite interview was 2/3 of a day and consisted of 3 interviews:
1. Behavioural (90 mins)
2. Algorithmic on a whiteboard (1 hour)
3. Design Question on a whiteboard (90 mins)