Gitlab hero border pattern left svg Gitlab hero border pattern right svg

Database Engineering

This page is dedicated to database application engineering and provides an entry-point for resources on this topic.

Also see Database Team in Enablement.

GitLab development

Please refer to the development documentation for database guidelines.

Database Roles at GitLab

We have two primary job roles that are focused on the database aspect:

  1. Backend Engineer, Database - in Development
  2. Database Reliability Engineer - in Infrastructure

The Backend Engineer, Database role is a software engineering role concentrated on application-side improvements and foundational database work in the GitLab codebase.

The Database Reliability Engineer is an operational role targeting and running the database infrastructure for GitLab.com from within the Reliability Engineering teams.

Database Maintainer

For the GitLab codebase, Database Maintainers contribute to the code review process by reviewing database-related changes and applying database review guidelines. They typically engage into conversations about database queries and their performance, database schema design and database migrations.

The Database Maintainer role:

If you're interested in participating in database reviews, please start from creating an issue with this template.

GitLab resources
Books

(In no particular order.)

Other resources