Staff Backend Engineer, Knowledge Graph (rust)

GitLab GitLab · Enterprise · India · Data Engineering

Staff Backend Engineer on the GitLab Knowledge Graph team, responsible for designing, scaling, and operating a high-impact graph data service that underpins agents, analytics, and architecture-level features. The role involves building a distributed SDLC indexing system using ClickHouse, NATS JetStream, and the Data Insights Platform, and exposing secure graph queries and MCP tools for AI agents and product features. The engineer will own core parts of the system end-to-end, focusing on architecture, multi-tenant behavior, performance, and ease of consumption by other teams and agents. The role also emphasizes operational maturity, collaboration with AI teams, and applying AI-assisted development workflows.

What you'd actually do

  1. Lead the design and evolution of core Knowledge Graph services in a production Rust codebase, including the graph query engine, SDLC and code indexing pipelines, and API/MCP surfaces that other GitLab teams and AI agents rely on.
  2. Own complex, cross-cutting initiatives that span GitLab Rails, the Data Insights Platform (Siphon, NATS, ClickHouse), and GitLab Duo Agent Platform, from technical direction and design docs through implementation, rollout, and iteration.
  3. Drive system design decisions that improve reliability, scalability, and maintainability for analytical (OLAP‑style) graph workloads. This includes multi‑hop traversals, aggregations, and multi‑tenant isolation. Document trade‑offs so the broader team can move quickly and stay aligned.
  4. Define and improve operational maturity for the service, including service level objectives (SLOs), observability, runbooks, incident response, capacity planning, and production readiness (PREP) for GitLab.com, Dedicated, and Self-Managed deployments.
  5. Collaborate asynchronously with product, data, infrastructure, security, and AI teams to sequence work, unblock platform‑level dependencies, and land features in a way that is safe for customers and sustainable for the team.

Skills

Required

  • Significant experience building and operating production backend systems, with a track record of owning reliability, maintainability, and on-call readiness for services that support other product teams or platforms.
  • Strong engineering skills in Rust or clear evidence you can ramp quickly and deliver in a Rust-first, performance-sensitive backend codebase.
  • Strong system design skills, including making and explaining clear architectural decisions, documenting constraints, and aligning trade-offs with product and platform needs.
  • Strong fundamentals in preparing and structuring information for AI agents: how to curate and organize what the agent sees, design systems that support effective LLM-powered behavior, and manage context windows and token usage.
  • Comfort working in ambiguous environments, with the ability to work autonomously and stay self-directed. Demonstrated ability to identify problems, drive solutions, and take ownership.
  • Experience with distributed data or analytics systems (for example, OLAP databases like ClickHouse or columnar stores, Kafka‑ or NATS‑style messaging, or change data capture (CDC) pipelines), and comfort reasoning about trade‑offs in that space.
  • Familiarity with graph data modeling and/or query patterns (property graphs, Cypher/GQL, n-hop traversals)

Nice to have

  • occasional Ruby (Rails integration and authorization paths) or frontend work (for example, the Software Architecture Map UI)

What the JD emphasized

  • Rust-first
  • Rust-first, performance-sensitive backend codebase

Other signals

  • underpins agents
  • exposes secure graph queries and MCP tools for AI agents
  • preparing and structuring information for AI agents
  • design systems that support effective LLM-powered behavior