--- layout: job_family_page title: "Distributed Systems Specialist" --- ## Responsibilities * Work on large-scale, in-production distributed systems that enable GitLab to scale horizontally (e.g. [Gitaly](https://gitlab.com/gitlab-org/gitaly/tree/master)) * Architect GitLab features that require distributed system expertise * Optimize bottlenecks through performance monitoring and measurement * Design and implement plans for increasing availability through partitioning/sharding * Document answers and improves existing documentation * Write blog posts relevant to the community ## Requirements * Strong understanding of distributed consensus protocols (e.g. Paxos, Raft) * Strong understanding of tradeoffs with sharding * Experience creating and working with distributed systems * Experience building and scaling highly-available systems * Proficient in Ruby on Rails and/or Go In addition, see the [Senior Developer job description](/job-families/senior-developer/).