Gitlab hero border pattern left svg Gitlab hero border pattern right svg


On this page


For a listing of open vacancies, please see the vacancies section on the Jobs page. Vacancies are maintained in Greenhouse based on our job families. A vacancy is a temporarily open position. A job family is a permanent description that also applies to existing people with that title. Don't use vacancy and job family interchangeably. The relevant parts of a job family are copy-pasted to Greenhouse to open a vacancy.

Vacancy Creation Process

To create a vacancy, a Hiring Manager will work with their Recruiting Manager, as outlined in the steps below. To note, a vacancy can only be created by the Department's Recruiting Manager before it can be submitted for approval in Greenhouse. This process enables us to ensure Greenhouse the single source of truth for hiring metrics.

Adding Vacancies to the Hiring Plan

The hiring manager carries the responsibility to ensure vacancies are opened in Greenhouse. Opened vacancies should align to what is included in the rolling 4Q forecast. Therefore, the Hiring Manager, Finance, and Recruiting can stay in sync on what was planned and track towards those goals.

Create or Review the Job Family

Once the vacancy is approved, the Hiring Manager will review the position description in the /job-families folder and update it, if needed, by making a merge request and assigning it to the Executive to review and merge. If there is no existing job family, follow the steps to create a new job family, then continue. Please note that new job families require approval from the CEO. The Recruiting Manager will use the relevant elements from this job family to open the vacancy in Greenhouse. The job family should include:

A compensation benchmark for the role should be set by working with the People Operations Analyst.

Opening Vacancies in Greenhouse

For positions that are included in the Rolling 4 Quarter Forecast, the Recruiting Manager will create and open all approved vacancies simultaneously.

The Recruiting Manager will log in to Greenhouse and hover over the plus sign in the top right corner of their dashboard, and then click "Create a Job".

Click on "Start from a copy of an existing job". From there, you can choose to clone a vacancy, which is ideal if you are opening a vacancy that has been opened before, or something very similar has been opened before. If there is no close match, select Any Status at the top bar, select "Draft", and choose the template for the division. Please note: when creating a vacancy, the "Start from scratch" option should not be used, as important elements needed in a vacancy will not be included.

Recruiting Team Tasks

After a Recruiting Manager creates a vacancy in Greenhouse and requests approval, it goes through the approval chain. The final approver of a vacancy is a member of the recruiting team, typically the Candidate Experience Specialist who is the coordinator for that vacancy. They should follow the below steps once they receive the request to approve a new vacancy.

Please note, updates from the Greenhouse jobs page to the GitLab jobs page generally happen within 30 minutes. Though, it can take up to 1 business day.

Intake, Sourcing, Screening, and Resume Submittal

  1. Once a vacancy is approved the Recruiter conducts an intake call with the Hiring Manager to get details about the position. If possible/applicable, the assigned Candidate Expereince Specialit and Sourcer will also be incuded in the intake call.
  2. When the intake call is completed, the Recruiter notifies the assigned Candidate Expereince Specialit so the vacancy can be posted in Greenhouse and on relevant internet job boards
  3. The Recruiter may conduct a calibration exercise with the Hiring Manager by presenting 2-3 unscreened resumes to make sure they are identifying the right skills and will adjust accordingly.
  4. The Recruiter conducts direct sourcing efforts, reviews resumes, maintains the status of applicants, sets dispositions, and will screen on average 8-10 candidates.
  5. Once candidates have been identified and screened, the Recruiter will submit the top 4-5 qualified applicants to the Hiring Manager or designee for review.
  6. The Manager will select which candidates they are interested in interviewing.

Sourcing for Open Positions

For difficult or hard-to-fill positions, the hiring team will use available tools to source for additional candidates. Please communicate with the hiring team if sourcing is needed for a strategic, specialized, or difficult to fill position. In addition, Managers should also reach out to their own network for candidates and referrals. It is common for candidates to respond more frequently to those who they know are the hiring manager. One superpower of great Managers is having a strong network of talent from which to source.

Recruiters dedicate Fridays as "sourcing day". They use various tools to identify talent by proactively reaching out to candidates for opportunities. In addition, they will partner with hiring managers to participate in sourcing to ensure they are targeting the right skillsets.

Publicizing the Vacancy

The Manager should always ask the team for passive referrals for open positions. GitLab team-members can refer candidates through our referral program.

The hiring team will always publicize the vacancy through the following means:

  1. Tweet the new vacancy post with the help of the content marketing manager and team.
  2. Request "soft” referrals by encouraging all GitLab team-members to post links to the jobs site on their LinkedIn profiles.
  3. Who's Hiring: On the first of the month (or closest business day), include a comment for GitLab in the Hacker News thread of "Who's Hiring". Template text: GitLab | Remote only | Full time - It’s an exciting time to join GitLab. As a fast-growing, all-remote company, GitLab is a place where you can contribute and make an impact from anywhere in the world. You’ll be part of an ambitious, productive team that values transparency and collaboration. We’re hiring solutions architects, engineering managers, security engineers, recruiters, support engineers, product managers, strategic account leaders, and more roles in every department. Here’s our full list of vacancies: Here’s an inside look at GitLab’s interview process from one of our new team members: Want to learn more? Check out our company handbook: comment

Note: The hiring team may advertise the vacancy through the following sites and is open to posting to more, in order to widely publish a variety of vacancies:

  1. Alumni post as a Y Combinator alumni we can post directly to the front page of Hacker News. We do this for all engineering functions, including the management ones. The PeopleOps vault has credentials under Hacker news. Go to Alumni post and click submit job. For the title use: GitLab (YC W15, All-remote) is hiring XXX. And the URL links to the vacancy. Example posting
  2. LinkedIn (Able to post 40 vacancies simultaneously, please mention to hiring team if you want your role listed here and it is not already)
  3. RemoteBase (Free; position descriptions are synced directly to our respective position description sites)
  4. WeWorkRemotely ($200 for 30 days, per position, used infrequently)
  5. RemoteOK ($200 for 90 days, per position, used infrequently)
  6. Indeed Prime (Primarily used for non-engineering roles)
  7. Ruby Weekly ($199 per slot per newsletter, for engineering roles)

When using vacancy links to spread the word about our current vacancies, in order to keep data accurate, we can create specific tracking links through Greenhouse in order to include the specific source of different job boards, etc. To learn more about how to create the tracking links for jobs, please see the Greenhouse help article.

All vacancies must be posted on our jobs page for at least 3 business days before we can close it or make an offer; this includes all new positions and promotions. If a vacancy has been opened for at least 3 business days and has 50 or more applicants, the recruiting team will close the role to new applicants at that time and reopen only if and when we need more applicants.

Updating a Vacancy

If any details of the vacancy need to be updated after it has been opened, the Hiring Manager can edit the details by clicking on "Job Setup,"" then "Edit" in the "Job Details" section. Some fields, such as the "No. of Openings," are restricted and will require additional approvals. In that scenario, please contact the Recruiting Manager or Greenhouse Administrator for assistance.

When the rolling 4 quarter forecast is approved the Recruiting Manager will increase the position count for the vacancy or create a new vacancy altogether.

Closing a Vacancy

To close a vacancy:

  1. The hiring team will clear the pipeline of candidates in all stages of application and notify the candidates that the position has been either filled or closed. Consider rejecting promising candidates with the reason Future Interest and making them a prospect so we can reconsider them in the future. You can also add various tags to the candidates, which makes it easier to find them in Greenhouse later on if you are recruiting for the same or a similar position. You can also set a reminder for a candidate if you anticipate reopening the role at a later date.
  2. Ask a Greenhouse admin (ideally your Recruiter or Candidate Experience Specialist) to close the position in Greenhouse.
  3. At times, we may still be interviewing but also have a sufficient supply of candidates and need not accept new applicants to fill the vacancy. In this case, the hiring team will "drain" the vacancy. This means that the vacancy will be closed, but the existing pipeline will continue through the process.

If the position was posted on any external job sites, the hiring team will email the partner or remove the position from that site.