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

Database Team

Vision

Developing solutions for scalability, application performance, data growth and developer enablement especially where it concerns interactions with the database.

Mission

Focusing on the database, our mission is to provide solutions that allow us to scale to our customer's demands. To provide tooling to proactively identify performance bottlenecks to inform developers early in the development lifecycle. To increase the number of database maintainers and provide database best practices to the community contributors and development teams within GitLab.

The following people are permanent members of the Database Team:

Person Role
New Vacancy - Craig Gomes (Acting) Engineering Manager, Database
Andreas Brandl Staff Backend Engineer, Database
Patrick Bair Senior Backend Engineer, Database
Yannis Roussos Senior Backend Engineer, Database

Stable Counterparts

The following members of other functional teams are our stable counterparts:

Person Role

Meetings

Whenever possible, we prefer to communicate asynchronously using issues, merge requests, and Slack. However, face-to-face meetings are useful to establish personal connection and to address items that would be more efficiently discussed synchronously such as blockers.

Work

We follow the GitLab engineering workflow guidelines. To bring an issue to our attention please create an issue in the relevant project. Add the ~"group::database" label along with any other relevant labels. If it is an urgent issue, please reach out to the Product Manager or Engineering Manager listed in the Stable Counterparts section above.

What we do

The team is responsible for the PostgreSQL application interactions to enable high performance queries while offering features to support scalability and strengthen availability. For the foreseeable future, the team will be focusing on database partitioning and sharding. PostgreSQL is the heart of Rails application, and there is no shortage of work to make GitLab more performant, scalable, and highly available from database perspective.

Boards

Documentation

We document our insights, road maps and other relevant material in this section.

  1. On table partitioning (February 2020)
  2. Table partitioning: Issue group search as an example (March 2020)