Backend Engineer / Senior Backend Engineer, Switchboard
The GitLab DevSecOps platform empowers 100,000+ organizations to deliver software faster and more efficiently. We are one of the world’s largest all-remote companies with 2,000+ team members and values that foster a culture where people embrace the belief that everyone can contribute. Learn more about Life at GitLab.
Backend Engineers in Infrastructure, will work alongside SREs, and are experienced Ruby developers who work in the product with a focus on reliability, observability, performance and scalability at the application level, as well as on resource optimization from an Infrastructure perspective and on operationally relevant features.
As part of the Switchboard team, Backend Engineers specialization will focus primarily on building the customer portal and the corresponding backend control plane to operate a large number of GitLab environments, through automating all workflows - from provisioning new environments to daily operating tasks. This is the main difference between other Backend Engineer roles in Infrastructure, as your day to day will be occupied by automation tasks of a large number of GitLab environments (and the environments used by GitLab), and programming tasks across many environments.
You may be a fit to this role if you:
- Have strong programming skills as a backend engineer with Ruby and/or Ruby on Rails.
- Strong experience with profiling and metrics analysis
- Strong experience with observability tools, including metrics (Prometheus is a plus), structured logging and distributed tracing
- A background in DevOps, exposure to Linux, GCP/AWS, Ansible, Terraform or similar products is desirable
- Good knowledge around SQL and/or PostgreSQL
- Have experience regularly interacting with customers, and a focus on resolving their requests with a sense of urgency.
- Are able to leverage GitLab as your day to day go-to tool
- Are able to reason about large systems - how they work and can be operated on a large scale, edge cases, failure modes, behaviors
- Have experience in collaborating and communicating asynchronously
- Have an urge to document all the things so you don't need to learn the same thing twice
- Have an enthusiastic, go-for-it attitude. When you see something broken, you can't help but fix it
- Have a strong sense for action and know how to iterate through a problem quickly
- Share our values, and work in accordance with those values
Bonus points if you:
- A background in working with the Kubernetes APIs
- You've built high scale systems with Kafka, Zookeeper, or similar messaging queues.
- You’ve built high scale APIs to orchestrate distributed systems
- You have worked on complex implementations featuring multi-threading, async IO, advanced scheduling and resource management
Projects you could work on:
- Build fault-tolerant, horizontally scalable solution to enable customers to operate their GitLab environments
- Work on the GitLab core projects such as, GitLab Rails, GitLab Workhorse, Gitaly, etc.
- Work on projects that create deployment packages of GitLab such as, GitLab Helm Chart, omnibus-gitlab, etc.
- Work on the GitLab observability stack (e.g. ELK, Prometheus)
- Interact with various cloud provider systems (e.g. GCP, AWS)
You share our values, and work in accordance with those values.
Country Hiring Guidelines: GitLab hires new team members in countries around the world. All of our roles are remote, however some roles may carry specific location-based eligibility requirements. Our Talent Acquisition team can help answer any questions about location after starting the recruiting process.
GitLab is proud to be an equal opportunity workplace and is an affirmative action employer. GitLab’s policies and practices relating to recruitment, employment, career development and advancement, promotion, and retirement are based solely on merit, regardless of race, color, religion, ancestry, sex (including pregnancy, lactation, sexual orientation, gender identity, or gender expression), national origin, age, citizenship, marital status, mental or physical disability, genetic information (including family medical history), discharge status from the military, protected veteran status (which includes disabled veterans, recently separated veterans, active duty wartime or campaign badge veterans, and Armed Forces service medal veterans), or any other basis protected by law. GitLab will not tolerate discrimination or harassment based on any of these characteristics. See also GitLab’s EEO Policy and EEO is the Law. If you have a disability or special need that requires accommodation, please let us know during the recruiting process.
Something looks off?