Senior Site Reliability Engineer, Environment Automation
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.
An overview of this role
As a Site Reliability Engineer at GitLab, you are responsible for keeping all user-facing services and other GitLab production systems running smoothly. Our SREs are a blend of pragmatic operators and software craftspeople that apply sound engineering principles, operational discipline, and mature automation to our operating environments and the GitLab codebase.
As an SRE within the Environment Automation specialization, you primarily focus on operating a large number of GitLab environments, through automating all workflows - from provisioning new environments to daily operating tasks. This is the main difference between Environment Automation SRE and other SRE’s at GitLab; your day to day will be occupied by automation tasks of a large number of GitLab environments (and the environments used by GitLab), and operational tasks across many environments.
Some examples of the projects you could work on:
- Automation used to operate a large number of GitLab environments
- Projects that create deployment packages of GitLab such as, GitLab Helm Chart, omnibus-gitlab, etc.
- Building Dedicated Gitlab setups using infrastructure as code automation with Ansible and Terraform and integrate with Cloud Native services from cloud providers (e.g GCP, AWS)
- Building Tools to orchestrate infrastructure as code workloads.
What you’ll do
- Build: Automating every operational task is a core requirement for Environment Automation SRE. E.g. package updates, configuration changes across all customer platforms without interruptions, tools for automatic provisioning of customer facing services, etc.
- Maintain: Develop a good (early) warning system and system that allows for reliable and quick maintenance tasks, such as library upgrades, version migrations and similar.
- Plan: Develop monitoring and alerting systems that predict capacity needs based on the customer usage patterns. Plan for new service rollouts, expansion of existing services and preparing advice for customers to optimize their resource consumption.
- Respond: Respond to user emergencies, platform alerts and support requests.
- Enhance: Implement new, and update existing security measures for the protection of GitLab infrastructure.
- Collaborate: Work with other engineering stakeholders on resolving larger architectural bottlenecks and participate by offering a large scale operational point of view. Work in close collaboration with software development teams to shape the future roadmap and establish strong operational readiness across teams.
What you’ll bring
- Experience in running and operating production workloads
- Strong programming skills - preferably with Ruby and/or Go.
- Strong background with Infrastructure as a Code technologies, and libraries powering GitLab, such as Terraform and Ansible. Experience with data templating tools such as Jsonnet would be considered a bonus.
- Ability to reason about large systems - how they work and can be operated on a large scale, edge cases, failure modes, and behaviors.
- Experience regularly interacting with customers, and a focus on resolving their requests with a sense of urgency.
About the team
GitLab’s Dedicated team's in which the SRE Environment Automation sits has the mission to create a fully managed, single-tenant GitLab environment, served through a GitLab Dedicated platform. It is developed to remove any manual interactions with customer tenant installations, and to ensure that the customer tenants are fully focused on unlocking the power of The One DevOps Platform
How GitLab will support you
- Benefits to support your health, finances, and well-being
- All remote, asynchronous work environment
- Flexible Paid Time Off
- Team Member Resource Groups
- Equity Compensation & Employee Stock Purchase Plan
- Growth and development budget
- Parental leave
- Home office support
Please note that we welcome interest from candidates with varying levels of experience; many successful candidates do not meet every single requirement. Additionally, studies have shown that people from underrepresented groups are less likely to apply to a job unless they meet every single qualification. If you're excited about this role, please apply and allow our recruiters to assess your application.
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.