26 Aug
|
Gitlab
|
Bengaluru
Job Summary
Senior Backend Engineer - Database Change Management
An overview of this role
As a Senior Backend Engineer, Database Upgrades, you'll help replace GitLab's sequential database migration system with a dependency graph model that makes upgrades faster and safer for GitLab.com and self-managed customers. You'll lead the design and delivery of a migration validation and test framework, including versioned fixture data across about 1,000 tables, a continuous integration (CI)-integrated test runner, and required correctness checks. You'll also serve as the senior technical anchor for our India-based engineering group, using clear written decisions to influence a team working across India, Asia-Pacific, Europe, the Middle East, Africa, and the United States. The manager for this role is based on the US West Coast.
We're open to hiring this role at Staff level for a candidate whose experience matches that scope. At Staff level, you'll also own architecture decisions for the migration system and lead design work across teams.
Responsibilities
- Lead the design and delivery of the migration validation and test framework from initial approach through production use.
- Contribute to a dependency graph migration system that supports safe ordering, parallel execution, and three-phase, low-downtime upgrades.
- Mentor intermediate engineers through pairing, code review, and design feedback.
- Make and document technical decisions asynchronously so team members can build on them across time zones.
- Review schema migrations from engineers across GitLab for safety, backward compatibility, and reliability.
- Collaborate with Distribution, Quality Assurance,
Database Architecture, Database Automation, and database framework teams to support GitLab.com and self-managed deployment methods.
- At Staff level, author and defend architecture proposals and represent the team in technical reviews across GitLab.
Requirements
- Deep experience with Ruby on Rails in large production codebases, including Active Record migration internals, or comparable depth in another frameworks migration system, such as Django or Ecto.
- Production PostgreSQL experience, including schema changes on large tables, locking behavior, and data definition language failure modes under load.
- A track record of leading delivery of a system from design through implementation and adoption.
- Experience mentoring engineers through pairing, code review, and technical feedback.
- Robust written communication and the ability to make progress independently in an asynchronous, distributed environment.
- Sound judgment when balancing reliability, safety, backward compatibility, and delivery needs.
- An interest in serving as a senior technical presence for an India-based engineering group while collaborating across regions.
About the team
We're working on the largest change to GitLab's migration system in its history, with a focus on making upgrades safer and easier for customers, including the roughly one-third of self-managed customers who are two or more required upgrade stops behind.
Disclaimer: This job posting has been aggregated from external source. Role details, content, and availability are subject to change. Applicants are advised to confirm the latest information directly on the company website before applying.
📌 Sr Backend Engineer - Database Change Management (Bengaluru)
🏢 Gitlab
📍 Bengaluru