The interview process was well structured, and it is also very well documented in GitLab's Handbook.
1. I applied via GitLab's website
2. A recruiter sent a questionnaire with basic Linux and Git exercises.
3. The recruiter then scheduled a screening call, which was very conversational, and basic details such as a description of the position, salary expectations, etc were discussed.
4. After the screening call, a technical interview was conducted. This involved debugging a live instance of GitLab and demonstrating my Linux, SQL and ruby skills.
5. A behavioral interview with my manager to be and a teammate was held. This included basic questions and some technical discussions.
6. The final interview was with a senior manager, which was also very conversation oriented.
After the interviews, background checks and reference checks were conducted, after which I was offered the position.