GitLab

Intermediate Backend Engineer, Ruby – Durability

GitLab

full-time

Posted on:

Origin:  • 🇨🇦 Canada

Visit company website
AI Apply
Apply

Job Level

Mid-LevelSenior

Tech Stack

AnsibleAWSAzureChefCloudDistributed SystemsGoogle Cloud PlatformKubernetesRubySDLCTerraform

About the role

  • Design and develop reliable backup and restore solutions from the ground up using Ruby, creating universal CLI tooling that works across multiple cloud and on-premise environments.
  • Build scalable data protection systems to support current and future GitLab deployments of all sizes.
  • Collaborate closely with cross-functional teams and Infrastructure teams to integrate backup solutions seamlessly into the GitLab ecosystem.
  • Participate in incident response when backup/restore systems are involved and contribute to incident reviews with a development perspective.
  • Act as a subject matter expert on data durability, backup strategies, and restore mechanisms within GitLab.
  • Continuously improve and optimize backup and restore performance, reliability, and user experience.
  • Contribute to automation and tooling that enable scaling and enterprise-level reliability for large single-tenant SaaS deployments.

Requirements

  • Strong programming skills in Ruby with experience building CLI tools and distributed systems.
  • Experience with multiple cloud platforms (GCP, AWS, Azure) and understanding of their storage and backup services.
  • Experience with infrastructure as code tools like Ansible, Terraform, Chef, etc. for managing infrastructure.
  • Understanding of Kubernetes and containerized backup solutions.
  • Ability to design systems that work reliably across diverse deployment environments.
  • Strong problem-solving skills and ability to think systematically about data protection challenges.
  • Ability to be a manager of one with a bias for action and continuous improvement.
  • Independent, proactive, and self-organized mindset with excellent asynchronous communication skills.
  • Excitement about building developer tools and solving complex distributed systems challenges.