Staff Backend Engineer, Gitlab Delivery: Upgrades

GitLab GitLab · Enterprise · India · Remote · Platforms Engineering

Staff Backend Engineer on the GitLab Delivery - Upgrades team, focusing on guiding the technical direction for GitLab’s self-managed deployment strategy to ensure reliable deployment and upgrades with minimal disruption. The role involves defining architecture for zero-downtime upgrades, strengthening observability and reliability, and guiding the next generation of deployment automation for self-managed GitLab environments.

What you'd actually do

  1. Guide the technical vision and architecture for GitLab’s cloud-native, self-managed deployments and upgrade workflows.
  2. Establish operational maturity standards, service integration patterns, and deployment models that help development teams manage the lifecycle of their components.
  3. Design and maintain Kubernetes Operators, Helm charts, and upgrade orchestration tooling for self-managed GitLab deployments across varied environments.
  4. Develop automation and integration frameworks for database migrations, rolling deployments, compatibility checks, and rollback paths.
  5. Define database and application lifecycle strategies, including safe PostgreSQL migration approaches and validation mechanisms that reduce downtime risk.

Skills

Required

  • Strong software engineering experience designing and delivering production systems that customers install and operate in their own infrastructure.
  • Proficiency in Go for large, complex codebases
  • Hands-on experience with Kubernetes in production, including building and maintaining Operators, designing Helm charts for stateful applications, and working with Custom Resource Definitions, admission controllers, and controller patterns.
  • Knowledge of cloud-native systems and tooling, such as service mesh, observability stacks, infrastructure as code, and automation tools like Terraform or Ansible.
  • Experience with stateful workloads and databases, including PostgreSQL schema design and migrations, persistent volumes, storage classes, and approaches for reducing downtime during upgrades.
  • Understanding of Linux systems and production operations, including package management, systemd, system-level debugging, observability, incident response, and on-call participation.
  • Ability to guide through influence, including writing clear technical proposals, documenting decisions, mentoring engineers, and working effectively across teams.

Nice to have

  • familiarity with Ruby on Rails and Rails application architecture
  • Interest in open source infrastructure or deployment tooling, or transferable experience from adjacent domains, with the ability to explain technical concepts clearly to different audiences.

What the JD emphasized

  • customers can deploy, upgrade, and run GitLab reliably in their own infrastructure with minimal disruption
  • zero-downtime upgrades
  • reduce operational complexity and upgrade friction
  • zero-downtime upgrades
  • simplify large-scale, production-ready self-managed deployments
  • reduce downtime risk