Overview
Backend Engineer on the Gitaly team, building GitLab's Git data storage tier, a standalone product providing reliable, secure, and fast access to Git repositories through APIs and storage operations.
What you'll do
- Own moderately sized to complex technical initiatives from problem definition and proposal through implementation, rollout, monitoring, and operational follow-through.
- Act as the directly responsible individual for projects by aligning stakeholders, communicating progress and trade-offs, identifying risks, and keeping execution moving with minimal guidance.
- Lead technical design for distributed storage, Git repository management, performance, reliability, and scalability problems, using data and benchmarking to guide decisions.
- Partner with engineers and teams across GitLab, including Git, Infrastructure, Site Reliability Engineering, Dedicated, and customer-facing teams, to deliver cross-functional outcomes.
- Improve engineering practices through mentoring, documentation, knowledge sharing, design reviews, and constructive code reviews.
- Take operational ownership of the systems you work on, including incident response, post-incident improvements, capacity and performance analysis, and customer escalations.
- Identify opportunities to improve work beyond an individual change through automation, reusable designs, better dashboards, upstream contributions, and improvements to development and testing workflows.
- Respond to user emergencies, platform alerts, and support requests, including regular on-call duties.
- Take part in on-call or operational support where your team's ownership model requires it.
What you'll need
- Significant professional experience building, debugging, and optimizing distributed or highly available software systems in large-scale production environments.
- Experience owning complex projects end to end, including technical design, execution, rollout, and operational support.
- Strong systems design skills and the ability to reason about performance, failure modes, consistency, concurrency, capacity, and observability.
- A track record of influencing technical decisions and working effectively with stakeholders across teams and disciplines.
- Experience mentoring engineers, improving team practices, and raising the quality of designs, code, testing, and documentation.
- Strong written and verbal communication skills, including the ability to explain complex technical concepts and make trade-offs clear.
- Professional experience with Go or another backend or systems language.
- Experience operating production systems, participating in incident response, and turning operational learnings into durable improvements.
Nice to have
- Experience with Ruby, Git internals, gRPC, or Git server infrastructure.
Details
- Location: Remote, Canada.
- Take part in on-call or operational support where the team's ownership model requires it.
Read the full description and apply on the company’s own careers page.