Staff Backend Engineer, Database Automation (Go)

GitLab

Full TimeNot specifiedPosted 3 days ago

Let the right jobs find you

Get personalised suggestions from verified company career pages, matched to your role, location, level, and skills.

Overview

Position Type

Full Time

Experience

Not specified

Job Description

An overview of this role

As a Senior or Staff Backend Engineer with the Database Excellence group, you'll build and evolve database automation and PostgreSQL as a service capabilities for GitLab. The level will be determined during the hiring process. You'll use Go to automate the full lifecycle of PostgreSQL across GitLab's infrastructure, making database operations safer, more consistent, and easier to scale for databases that sit behind high-throughput, always-on internet services. You'll work closely with partner teams to shape how GitLab provisions and manages PostgreSQL in a fully remote, highly collaborative environment.

What you’ll do

  • Design, build, and maintain Go-based automation that manages the full PostgreSQL lifecycle, including provisioning, configuration, upgrades, failover, scaling, and decommissioning, reducing reactive operational work that currently takes more than 80% of the team's time.
  • Build automation that works across infrastructure-as-code tooling and cloud infrastructure, and evaluate operator-based approaches as the platform evolves.
  • Use AI agents as a regular part of building and operating services, including implementation, review, and reducing repetitive work, while keeping the context agents need in the repository so the whole team can build on it.
  • Build for internet scale by designing automation and services for high-throughput, always-on production workloads, where GitLab.com traffic sets the bar for correctness, latency, and availability.
  • Integrate compute, storage, networking, identity and access management, and managed data services across cloud providers into one coherent PostgreSQL platform instead of creating bespoke setups for each database.
  • Build GitLab's PostgreSQL as a service platform to replace bespoke database setups with standardized, automated provisioning and lifecycle management, so supporting more databases doesn't require growing the operations team at the same rate.
  • Collaborate closely with product management, infrastructure, software delivery, and other engineering teams to design and ship high-performing solutions.
  • Research, design, and implement improvements to PostgreSQL performance, scalability, and data health, helping maintain more than 8 months of operational runway for all critical database saturation points.
  • Review database automation and Go changes from other engineers and contributors, with attention to safety, maintainability, and performance.
  • Document automation practices, PostgreSQL operational patterns, and guidance that helps engineers use and contribute to the platform.
  • Build safe, repeatable automation for PostgreSQL major version upgrades at GitLab.com scale, validating changes against real production traffic before rollout.
  • Operate what you build in production from end to end, using production feedback to guide each iteration.

What you’ll bring

  • Professional software engineering experience working with PostgreSQL in large, complex production environments, including experience building or operating a database-as-a-service product.
  • Proficiency with Go, including designing, implementing, testing, and reviewing backend services.
  • Experience developing Kubernetes operators, controllers, or similar automation for the lifecycle of stateful services, especially databases. Kubernetes experience is one way to demonstrate this skill, but isn't required; comparable experience building database or infrastructure automation is welcome.
  • Comfort with infrastructure as code and core database operations concepts such as high availability, replication, backups, and system-level performance trade-offs.
  • Familiarity with Ruby is a plus but isn't required. Much of GitLab's application codebase uses Ruby on Rails, and being able to read it helps when designing automation that application teams depend on. We’ll expect you to become comfortable with it on the job, not on day one.
  • Strong written communication skills and comfort working asynchronously in an all-remote, distributed team.
  • Self-directed work style with effective organizational skills, the ability to manage priorities as a "manager of one," and alignment with GitLab's values of transparency, collaboration, inclusion, and open source contribution, as well as its operating principles.
  • Ownership of the technical direction for a major initiative such as the PostgreSQL as a service platform, turning an ambiguous problem into an architecture and a sequenced plan that several engineers can execute in parallel.
  • Influence beyond the team, setting the patterns other engineers follow, partnering with sibling database, infrastructure, and platform teams, and growing engineers through design reviews and mentorship.

About the team

The Database Excellence group keeps GitLab’s databases running reliably through proactive health management, operational excellence, and strategic enablement. We maintain operational runway by identifying and addressing saturation points, operate infrastructure through automated and scalable processes, and provide tools and frameworks that help teams build features sustainably. Our primary focus is GitLab.com, and we're expanding our scope to provide database health frameworks and tooling that benefit self-managed customers as well.

Required Skills

PostgresqlGoKubernetesIacHigh AvailabilityReplicationBackupSystem Level Performance Trade OffsRuby

About the Company

GitLab

United States

Share This Job