Senior Backend Engineer - Database Change Management
Design and deliver a validation framework and dependency-graph migration system that makes GitLab upgrades safer, faster, and more reliable. The role requires deep Rails or comparable migration-framework expertise, production PostgreSQL experience, technical leadership, mentoring, and strong asynchronous communication.
About the job
Responsibilities
- Lead the design and delivery of a database migration validation and test framework from initial approach through production use.
- Contribute to a dependency graph migration system supporting 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 for teams working across time zones.
- Review schema migrations for safety, backward compatibility, and reliability.
- Collaborate with Distribution, Quality Assurance, Database Architecture, Database Automation, and database framework teams supporting GitLab.com and self-managed deployments.
- At Staff level, author and defend architecture proposals and represent the team in technical reviews.
Requirements
- Deep experience with Ruby on Rails in large production codebases, including Active Record migration internals, or comparable depth with another framework's 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.
- Track record of leading delivery of a system from design through implementation and adoption.
- Experience mentoring engineers through pairing, code review, and technical feedback.
- Strong written communication and ability to work independently in an asynchronous, distributed environment.
- Sound judgment balancing reliability, safety, backward compatibility, and delivery needs.
- Interest in serving as a senior technical presence for an India-based engineering group while collaborating across regions.
Compensation and Benefits
- Benefits supporting health, finances, and well-being.
- Flexible paid time off.
- Team Member Resource Groups.
- Equity compensation and Employee Stock Purchase Plan.
- Growth and Development Fund.
- Parental leave.
Skills
Ruby on Rails, Ruby, Active Record, Database Migrations, Django, Ecto, Postgres, SQL, Schema Design, Continuous Integration, Dependency Graphs, Code Review
Similar jobs
Backend Engineering jobsLeads the architecture and scaling of distributed backend systems for AI-powered talent search, matching, and agentic workflows. Requires 7+ years of backend experience, strong cloud and data expertise, and proficiency in a modern object-oriented language.
Senior individual contributor responsible for designing, building, operating, and improving large-scale backend services, APIs, and telemetry pipelines in Go and Python. The role requires production systems ownership, distributed-systems expertise, incident leadership, mentoring, and technical design leadership.
Senior backend software engineer building and scaling Java and Spring Boot services for a global expense management platform. The role requires 4–6 years of experience with distributed systems, cloud platforms, production ownership, and AI-driven development.
Senior backend engineer designing scalable services and APIs that connect Phantom Cash to blockchain networks. The role requires Node.js/NestJS, REST API, event-driven, and distributed-systems expertise, with blockchain or fintech experience preferred.
Senior software engineer responsible for designing reliable, distributed tax remittance systems operating globally across currencies, agencies, and compliance requirements. Requires 6+ years of programming experience and strong backend architecture and distributed-systems expertise, with Python, Django, React, MongoDB, and AWS preferred.