Site Reliability Engineer
GitLab.com is a unique site and it brings unique challenges: it’s the biggest GitLab instance in existence; in fact, it’s one of the largest single-tenancy open-source SAAS sites on the internet. The experience of our production engineers feeds back into other engineer groups within the company, as well as to GitLab customers, running on-premise installations.
- Be on a PagerDuty rotation to respond to GitLab.com availability incidents and
- provide support for service engineers with customer incidents.
- Use your on-call shift to prevent incidents from ever happening.
- Manage our infrastructure with Chef, Terraform and Kubernetes.
- Make monitoring and alerting alert on symptoms and not on outages.
- Document every action so your learnings turn into repeatable actions and then into automation.
- Use the GitLab product to run GitLab.com as a first resort and improve the product as much as possible
- Improve the deployment process to make it as boring as possible.
- Design, build and maintain core infrastructure pieces that allow GitLab scaling to support hundred of thousands of concurrent users.
- Debug production issues across services and levels of the stack.
- Plan the growth of GitLab's infrastructure.
- Think about systems - edge cases, failure modes, behaviors, specific implementations.
- Know your way around Linux and the Unix Shell.
- Know what is the use of config management systems like Chef (the one we use)
- Have strong programming skills - Ruby and/or Go
- Have an urge to collaborate and communicate asynchronously.
- Have an urge to document all the things so you don't need to learn the same thing twice.
- Have a proactive, go-for-it attitude. When you see something broken, you can't help but fix it.
- Have an urge for delivering quickly and iterating fast.
- Share our values, and work in accordance with those values.
Projects you could work on:
- Coding infrastructure automation with Chef
- Improving our Prometheus Monitoring or building new Metrics
- Helping release managers deploy and troubleshoot new versions of GitLab-EE.
- Migrate GitLab.com from it’s current home on Azure Cloud to Google Cloud Platform.
- Migrate GitLab.com to Kubernetes.
- Qualified candidates receive a short questionnaire and coding exercise from our Global Recruiters
- The review process for this role can take a little longer than usual but if in doubt, check in with the Global recruiter at any point.
- Selected candidates will be invited to schedule a 30min screening call with our Global Recruiters
- Next, candidates will be invited to schedule a first 45 minute behavioral interview with a member of the Production team.
- Candidates will then be invited to complete a technical assignment and review it with a member of the Production team.
- Candidates will be invited to schedule an interview with our VP of Engineering
- Finally, candidates may be asked to have a 50 minute interview with our CEO
- The basics of GitLab development can be found in the developer onboarding document.
- The handbook details the complete GitLab Workflow.
GitLab Inc. is a company based on the GitLab open-source project. GitLab is a community project to which over 1,000 people worldwide have contributed. We are an active participant in this community, trying to serve its needs and lead by example. We have one vision: everyone can contribute to all digital content, and our mission is to change all creative work from read-only to read-write so that everyone can contribute.
We value results, transparency, sharing, freedom, efficiency, frugality, collaboration, directness, kindness, diversity, boring solutions, and quirkiness. If these values match your personality, work ethic, and personal goals, we encourage you to visit our primer to learn more. Open source is our culture, our way of life, our story, and what makes us truly unique.
Work remotely from anywhere in the world. Curious to see what that looks like? Check out our remote manifesto.
Top 10 reasons to work for GitLab:
1. Work with helpful, kind, motivated, and talented people.
2. Work remote so you have no commute and are free to travel and move.
3. Have flexible work hours so you are there for other people and free to plan the day how you like.
4. Everyone works remote, but you don't feel remote. We don't have a head office, so you're not in a satellite office.
5. Work on open source software so you can interact with a large community and can show your work.
6. Work on a product you use every day: we drink our own wine.
7. Work on a product used by lots of people that care about what you do.
8. As a company we contribute more than we take, most of our work is released as the open source GitLab CE.
9. Focused on results, not on long hours, so that you can have a life and don't burn out.
10. Open internal processes: know what you're getting in to and be assured we're thoughtful and effective.