Backend Engineer, Knowledge Graph (Rust)

GitlabGitlab·Remote(Remote, India)
Software Development
Adjust

WFA Digital Insight

The demand for skilled backend engineers with expertise in Rust has seen significant growth, with companies like Gitlab leading the charge in innovative software development. As the industry continues to evolve, the need for professionals who can build and operate complex graph data services is on the rise. Gitlab, with its commitment to AI-driven productivity and operational efficiency, stands out as a pioneer in the field. With the remote job market booming, candidates are looking for roles that offer challenging projects and opportunities for growth. Before applying, candidates should be aware of the importance of clear ownership, thoughtful system design, and rigorous thinking about data and reliability in this role.

Job Description

## About the Role As a Backend Engineer on the Knowledge Graph team at Gitlab, you will be part of a small, Rust-first team that values clear ownership, thoughtful system design, and rigorous thinking about data and reliability. Your primary responsibility will be to help build and operate a graph data service that supports GitLab Duo agents, analytics, and architecture-level features across GitLab.com, Dedicated, and Self-Managed deployments. This role matters because it directly contributes to enhancing developer productivity, improving operational efficiency, and reducing security and compliance risk.

The Knowledge Graph service is a Rust backend that builds a property graph from GitLab’s software development lifecycle (SDLC) and code data. It uses ClickHouse, NATS JetStream, and the Data Insights Platform, exposing secure graph queries and MCP tools used by AI agents and product features. You will work closely with senior and staff engineers to deliver features and improvements in well-scoped areas, learn the broader architecture, and contribute to reliability, observability, and operational readiness.

## What You Will Do - Implement and iterate on backend features in the Rust-based Knowledge Graph service, including changes to the query engine, SDLC and code indexing flows, and API endpoints.

  • Help maintain integrations between Knowledge Graph and the rest of the GitLab platform, working in areas that touch GitLab Rails, the Data Insights Platform (Siphon, NATS, ClickHouse), and GitLab Duo Agent Platform.
  • Contribute to system design discussions by proposing options, raising questions, and documenting decisions, with a focus on reliability, scalability, and maintainability for analytical graph workloads.
  • Improve the operational maturity of the service by adding or enhancing metrics, logging, runbooks, alerts, and small readiness tasks, and by participating in on-call rotation as appropriate for your level and experience.
  • Collaborate asynchronously with product, data, infrastructure, security, and AI counterparts to clarify requirements, design solutions, and ensure seamless integration of the Knowledge Graph service with other GitLab components.
  • Deliver features and improvements in well-scoped areas, ensuring they meet the high standards of quality, reliability, and performance expected by GitLab.
  • Learn the broader architecture of the Knowledge Graph service and its integrations, identifying areas for improvement and proposing solutions.
  • Take clear ownership of specific components or features, contributing to their development, maintenance, and operational readiness.
  • Participate in code reviews, providing constructive feedback to peers and incorporating feedback from others to improve the overall quality of the codebase.
  • Stay up-to-date with the latest developments in Rust, graph databases, and related technologies, applying this knowledge to improve the Knowledge Graph service.
## What We Are Looking For - Strong proficiency in Rust, with experience in building and maintaining large-scale Rust applications.
  • Experience with graph databases, preferably ClickHouse, and knowledge of graph query languages.
  • Familiarity with NATS JetStream and the Data Insights Platform, or similar technologies.
  • Understanding of software development lifecycle (SDLC) and code data, with experience in building services that integrate with these areas.
  • Experience with Agile development methodologies and version control systems, preferably Git.
  • Strong problem-solving skills, with the ability to analyze complex issues and propose effective solutions.
  • Excellent communication and collaboration skills, with experience working in distributed teams.
  • Experience with operational readiness, including metrics, logging, runbooks, alerts, and on-call rotations.
  • Strong focus on reliability, scalability, and maintainability, with experience in designing and implementing systems that meet these criteria.
## Nice to Have - Experience with AI and machine learning, particularly in the context of software development and code analysis.
  • Knowledge of cloud platforms, such as AWS or GCP, and experience with containerization using Docker.
  • Familiarity with security and compliance frameworks, such as SOC 2 or ISO 27001.
  • Experience with observability tools, such as Prometheus, Grafana, or New Relic.
  • Participation in open-source projects, preferably related to Rust, graph databases, or software development lifecycle tools.
## Benefits and Perks - Competitive salary and benefits package, tailored to the Indian market.
  • Opportunity to work with a global, remote-first company that values flexibility and work-life balance.
  • Professional development opportunities, including training, mentorship, and conference sponsorships.
  • Access to the latest tools and technologies, including Rust, graph databases, and AI-powered development platforms.
  • Collaborative, dynamic work environment with a strong focus on teamwork and open communication.
  • Flexible working hours, with the ability to work from anywhere in India.
  • Generous parental leave policy, supporting new parents in their transition to parenthood.
  • Comprehensive health insurance package, covering medical, dental, and vision care.

How to Stand Out

- To stand out in your application, highlight your experience with Rust and graph databases, and be prepared to discuss your approach to system design and reliability.

  • Make sure your resume and cover letter are tailored to the specific requirements of the role, with a focus on your technical skills and experience.
  • Prepare to discuss your experience with Agile development methodologies, version control systems, and operational readiness.
  • Be ready to provide examples of your problem-solving skills, particularly in the context of complex technical issues.
  • Show enthusiasm for Gitlab’s mission and values, and highlight your ability to work effectively in a remote, distributed team.
  • Consider creating a personal project or contributing to an open-source project to demonstrate your skills and experience with Rust and graph databases.

This is a remote position listed on WFA Digital, the platform for professionals who work from anywhere. Browse more remote jobs across all categories.