--- layout: default title: Join GitLab twitter_image: '/images/tweets/teamgitlab.jpg' suppress_header: true manual_cookiebot: true extra_css: - jobs.css extra_js: - apply.js --- - listData = job_listing.list_data .container.listing-container .content.tile{id: 'opportunities'} %h1 Current Vacancies %p All of our vacancies are hosted on our applicant tracking system (ATS), %a{href: 'https://www.greenhouse.io/'} Greenhouse. The below list will dynamically load our current vacancies from Greenhouse; if you do not see the list, please view the %a{href: 'https://boards.greenhouse.io/gitlab'} vacancies directly on Greenhouse. %p We don’t work with recruiters or agencies. We are %a{href: '/company/culture/all-remote/'} all remote and hire in most countries except for %a{href: '/jobs/faq#country-hiring-guidelines'} these. %a{href: '/jobs/faq'} Please see this page for more details and other FAQs. .container.u-margin-top-sm{id: 'job-filter'} %h6 Department %select{id: 'select-department'} %option{value: 'all'}= "All Departments" - if !listData.empty? - listData.each do |department| - if department[:parent_id].nil? - if !department[:child_ids].empty? || !department[:jobs].empty? %option{value: "#{department[:id]}", data: {type: 'department'}}= department[:name] - data = show_childs(listData, department, [], false, 1, department[:id], [], []) - if data.is_a?(Array) && !data.empty? - data.each do |item| %option{value: "#{item[:id]}", data: {type: 'team'}}= item[:name] .container.u-margin-top-sm{id: 'job-listing'} .jobs-counter.hidden %h5#counter - if !listData.empty? - listData.each do |department| - if department[:parent_id].nil? - if !department[:child_ids].empty? || !department[:jobs].empty? %h4.department-title{data: {department: department[:id]}}= department[:name] - if !department[:jobs].empty? - department[:jobs].each do |job| .job-container{data: {teams: [department[:id]], depth: 1}, style: 'margin-left: 20px'} %a{href: "/jobs/apply/#{to_url_param(job[:title])}-#{job[:id].to_s}"}= job[:title] %h6= job[:location][:name] - data = show_childs(listData, department, [], true, 2, department[:id], [], []) - if data.is_a?(Array) && !data.empty? - data.each do |item| = item