<commit_before>---
layout: job_page
title: "Backend Developer, Edge"
---

Edge Backend Developers are primarily tasked with improving the productivity of
the GitLab developers (from both GitLab Inc and the rest of the community), and
making the GitLab project maintainable in the long-term.

See the description on the [Edge team](/handbook/edge) for more details. Edge
Backend Developers report to the [Edge Lead](/jobs/edge-lead/).

We are currently looking for [backstage specialists](/jobs/specialist/backstage),
or developers with strong interest in the backstage speciality.

## Responsibilities

* Take initiative in improving the software in small or large ways to address
  pain points in your own experience as a developer.
* Keep code easy to maintain and keep it easy for others to contribute code to
  GitLab.
* Manage and review code contributed by the rest of the community and work with
  them to get it ready for production.
* Support and collaborate with our [service engineers](/jobs/service-engineer)
  in getting to the bottom of user-reported issues and come up with robust solutions.
* Engage with the core team and the open source community to collaborate on improving GitLab.
* Qualify developers for hiring.

## Requirements

* You can reason about software, algorithms, and performance from a high level.
* You are passionate about open source.
* You have strong programing skills - Ruby and Rails.
* You know how to write your own Ruby gem using TDD techniques.
* You have worked on a production-level Ruby application, preferably using Rails.
  This is a [strict requirement](#ruby-experience).
* Strong written communication skills.
* You are self-motivated and have strong organizational skills.
* You have an urge to collaborate and communicate asynchronously.
* You have an urge to document all the things so you don't need to learn the same
  thing twice.
* You have an urge to automate all the things so you don't need to do the same thing
  twice.
* You have a proactive, go-for-it attitude. When you see something broken, you can't
  help but fix it.
* You have an urge for delivering quickly and iterating fast.
* Experience with Docker, Nginx, Go, and Linux system administration a plus.
* Experience with online community development a plus.
* You share our [values](/handbook/#values), and work in accordance with those
  values.
* [A technical interview](/jobs/#technical-interview) is part of the hiring
  process for this position.

### Ruby experience

For this position, a significant amount of experience with Ruby is a **strict
requirement**.

We would love to hire all great backend developers, regardless of the language
they have most experience with, but at this point we are looking for developers
who can get up and running within the GitLab code base very quickly and without
requiring much training, which limits us to developers with a large amount of
existing experience with Ruby, and preferably Rails too.

For a time, we also considered applicants with little or no Ruby and Rails
experience for this position, because we realize that programming skills are to
a large extent transferable between programming languages, but we are not
currently doing that anymore for the reasons described in the
[merge request](https://gitlab.com/gitlab-com/www-gitlab-com/merge_requests/2695)
that removed the section from this listing that described that policy.

If you think you would be an asset to our engineering team regardless, please
see if [another position](/jobs) better fits your experiences and interests,
or apply using the [Open Application](/jobs/open-application/).

If you would still prefer to join the backend development team as a Ruby
developer, please consider contributing to the open-source
[GitLab Community Edition](https://gitlab.com/gitlab-org/gitlab-ce). We
frequently hire people from the community who have shown through contributions
that they have the skills that we are looking for, even if they didn’t have much
previous experience with those technologies, and we would gladly review those
contributions.

## Workflow

The basics of GitLab development can be found in the [developer onboarding](/handbook/developer-onboarding/#basics-of-gitlab-development) document.

The handbook details the complete [GitLab Workflow](/handbook/#gitlab-workflow).

## Relevant links

- [Engineering Handbook](/handbook/engineering)
- [Engineering Workflow](/handbook/engineering/workflow)
- [Edge Team](/handbook/edge)
- [Backstage speciality](/jobs/specialist/backstage)

## Hiring Process

Applicants for this position can expect the hiring process to follow the order below. Please keep in mind that applicants can be declined from the position at any stage of the process. To learn more about someone who may be conducting the interview, find her/his job title on our [team page](/team).


* Part of the application process is to provide links to some code. Some
  candidates want to share code privately, so if they do, we send them an email
  with our GitLab.com / GitHub / Bitbucket usernames and also invite them to
  email code to us.
* If the code looks good, we ask the candidate to answer two questions about web
  applications and object-oriented programming concepts.
* Selected candidates will be invited to schedule a 30-minute
  [screening call](/handbook/hiring/#screening-call) with our Global Recruiters.
* Next, candidates will be invited to schedule a 30-minute soft-skills
  interview with the Edge Lead.
* Candidates will then be invited to schedule a 45-minute technical interview
  with a Senior Developer.
* Candidates will be invited to schedule a interview with our VP of Engineering.
* Finally, candidates will have an interview with our CEO.
* Successful candidates will subsequently be made an offer via email.

Additional details about our process can be found on our [hiring page](/handbook/hiring).
<commit_msg>Edge develpers are also tasked to work on community MRs and issues<commit_after>---
layout: job_page
title: "Backend Developer, Edge"
---

Edge Backend Developers are primarily tasked with improving the productivity of
the GitLab developers (from both GitLab Inc and the rest of the community), and
making the GitLab project maintainable in the long-term.

See the description of the [Edge team](/handbook/edge) for more details. Edge
Backend Developers report to the [Edge Lead](/jobs/edge-lead/).

We are currently looking for [backstage specialists](/jobs/specialist/backstage),
or developers with strong interest in this speciality. The position
also involves working with the community as
[merge request coach](/jobs/merge-request-coach), and working together with our
[issue triage specialists](/jobs/specialist/issue-triage) to respond and address
issues from the community.

## Responsibilities

* Take initiative in improving the software in small or large ways to address
  pain points in your own experience as a developer.
* Keep code easy to maintain and keep it easy for others to contribute code to
  GitLab.
* Manage and review code contributed by the rest of the community and work with
  them to get it ready for production.
* Support and collaborate with our [service engineers](/jobs/service-engineer)
  in getting to the bottom of user-reported issues and come up with robust solutions.
* Engage with the core team and the open source community to collaborate on improving GitLab.
* Qualify developers for hiring.

## Requirements

* You can reason about software, algorithms, and performance from a high level.
* You are passionate about open source.
* You have strong programing skills - Ruby and Rails.
* You know how to write your own Ruby gem using TDD techniques.
* You have worked on a production-level Ruby application, preferably using Rails.
  This is a [strict requirement](#ruby-experience).
* Strong written communication skills.
* You are self-motivated and have strong organizational skills.
* You have an urge to collaborate and communicate asynchronously.
* You have an urge to document all the things so you don't need to learn the same
  thing twice.
* You have an urge to automate all the things so you don't need to do the same thing
  twice.
* You have a proactive, go-for-it attitude. When you see something broken, you can't
  help but fix it.
* You have an urge for delivering quickly and iterating fast.
* Experience with Docker, Nginx, Go, and Linux system administration a plus.
* Experience with online community development a plus.
* You share our [values](/handbook/#values), and work in accordance with those
  values.
* [A technical interview](/jobs/#technical-interview) is part of the hiring
  process for this position.

### Ruby experience

For this position, a significant amount of experience with Ruby is a **strict
requirement**.

We would love to hire all great backend developers, regardless of the language
they have most experience with, but at this point we are looking for developers
who can get up and running within the GitLab code base very quickly and without
requiring much training, which limits us to developers with a large amount of
existing experience with Ruby, and preferably Rails too.

For a time, we also considered applicants with little or no Ruby and Rails
experience for this position, because we realize that programming skills are to
a large extent transferable between programming languages, but we are not
currently doing that anymore for the reasons described in the
[merge request](https://gitlab.com/gitlab-com/www-gitlab-com/merge_requests/2695)
that removed the section from this listing that described that policy.

If you think you would be an asset to our engineering team regardless, please
see if [another position](/jobs) better fits your experiences and interests,
or apply using the [Open Application](/jobs/open-application/).

If you would still prefer to join the backend development team as a Ruby
developer, please consider contributing to the open-source
[GitLab Community Edition](https://gitlab.com/gitlab-org/gitlab-ce). We
frequently hire people from the community who have shown through contributions
that they have the skills that we are looking for, even if they didn’t have much
previous experience with those technologies, and we would gladly review those
contributions.

## Workflow

The basics of GitLab development can be found in the [developer onboarding](/handbook/developer-onboarding/#basics-of-gitlab-development) document.

The handbook details the complete [GitLab Workflow](/handbook/#gitlab-workflow).

## Relevant links

- [Engineering Handbook](/handbook/engineering)
- [Engineering Workflow](/handbook/engineering/workflow)
- [Edge Team](/handbook/edge)
- [Backstage speciality](/jobs/specialist/backstage)

## Hiring Process

Applicants for this position can expect the hiring process to follow the order below. Please keep in mind that applicants can be declined from the position at any stage of the process. To learn more about someone who may be conducting the interview, find her/his job title on our [team page](/team).


* Part of the application process is to provide links to some code. Some
  candidates want to share code privately, so if they do, we send them an email
  with our GitLab.com / GitHub / Bitbucket usernames and also invite them to
  email code to us.
* If the code looks good, we ask the candidate to answer two questions about web
  applications and object-oriented programming concepts.
* Selected candidates will be invited to schedule a 30-minute
  [screening call](/handbook/hiring/#screening-call) with our Global Recruiters.
* Next, candidates will be invited to schedule a 30-minute soft-skills
  interview with the Edge Lead.
* Candidates will then be invited to schedule a 45-minute technical interview
  with a Senior Developer.
* Candidates will be invited to schedule a interview with our VP of Engineering.
* Finally, candidates will have an interview with our CEO.
* Successful candidates will subsequently be made an offer via email.

Additional details about our process can be found on our [hiring page](/handbook/hiring).

{'fraction_non_alphanumeric': 0.05462496905685288, 'fraction_numerical': 0.0016503011799653437, 'mean_word_length': 4.5443732845379685, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3003770', 'n_tokens_mistral': 3047, 'n_tokens_neox': 2893, 'n_words': 1688}