I applied directly to Gitlab via their careers site. The first interview was a screening call with a technical recruiter. This interview lasted for 30 minutes. This part went well for me, I believe so long as you meet most if not all of the job requirements.
The second interview is a technical interview with two senior engineers. It lasts for 90 minutes (with the last 15 minutes at the end reserved for questions and comments). It was a screen sharing/ pair programming session with one of the engineers (the other remains silent in the background and audits the call). This session involved reviewing a merge request made to an existing ruby on rails code base. You are given the merge request beforehand to review, run locally, then post any comments.
Though overall the technical interview went well, I later on got a regret email that Gitlab had chosen to proceed with other candidates whom they felt had greater experience with TDD in ruby on rails.