About GitLab
The Database Automation team is a remote, agile backend team within the Data Engineering organization at GitLab. They operate asynchronously across regions, collaborating closely with infrastructure, software delivery, and analytics teams. The team employs a self-organized approach to enhance GitLab.com infrastructure while providing support to self-managed customers during upgrades and scaling efforts.
About the Position
Introduction
As an Intermediate Backend Engineer in the Database Automation team at GitLab, you will develop and enhance frameworks, patterns, and tooling to ensure the scalability, health, and safety of GitLab's application datastores across GitLab.com and self-managed instances. You will collaborate with cross-functional teams, focus on data architecture and lifecycle management, and contribute to performance improvements within the infrastructure. This role offers hands-on experience with PostgreSQL and Ruby on Rails in an all-remote, team-based environment, with mentorship to grow your skills in data scalability, system design, and addressing complex reliability issues.
Responsibilities
- Develop and iterate backend features and data frameworks to ensure safe and efficient data operations at scale across GitLab.com and self-managed deployments.
- Work with product management, UX, frontend, infrastructure, software delivery, and analytics teams to design and deliver high-performing, reliable solutions.
- Review and enhance database-related changes from engineers and external contributors to maintain data integrity, safety, and performance across diverse environments.
- Design, build, and maintain tooling and guardrails, such as SQL traffic replay and background operations frameworks, to proactively detect and resolve scalability, performance, and data health issues.
- Research, design, and implement database performance and scalability improvements, including soft delete strategies and database migration testing.
- Document database best practices, anti-patterns, and data architecture guidance to empower developers with informed and consistent choices.
- Develop solutions for database upgrade paths and migration strategies, ensuring backward compatibility, minimal downtime, and reduced operational friction for self-managed customers.
- Ship incremental improvements and eventually take full ownership of larger projects with shorter revision cycles.
Requirements
- Professional software engineering experience with PostgreSQL in large, complex production environments, including performance tuning and troubleshooting.
- Proficiency with Ruby on Rails or another Ruby framework, with experience in designing, implementing, and reviewing backend features and services.
- Ability to reason about software design, algorithms, and performance trade-offs at a system level, particularly in data-intensive applications.
- Strong written communication skills and comfort with asynchronous work in an all-remote, distributed team.
- Self-directed work style with effective organizational skills and the ability to manage priorities independently.
- Alignment with GitLab's values: transparency, teamwork, inclusion, and contribution to open-source practices.
- Openness to learning and applying new tools and approaches, with transferable experience from related data, infrastructure, or developer tooling domains.
About Company
The Database Automation team is a remote, agile backend team within the Data Engineering organization at GitLab. They operate asynchronously across regions, collaborating closely with infrastructure, software delivery, and analytics teams. The team employs a self-organized approach to enhance GitLab.com infrastructure while providing support to self-managed customers during upgrades and scaling efforts.
Apply Now
Your data is only shared with GitLab
Location
Remote, India
Type
Full-Time
Keywords
Similar Roles
Explore comparable positions
Backend Engineer, Database Automation (Ruby)
GitLab