KafkaRubyRuby on RailsRustSDLCTypeScriptVue.jsGoAIAnalyticsVueRailsGitLabCommunication
About this role
Role Overview
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 (including MCP endpoints) under guidance from senior and staff engineers
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, align on scope, and ship features safely for customers and sustainably for the team
Use AI-assisted development workflows responsibly (for example, using Knowledge Graph-backed agents and internal Duo tooling), and share what works with the team while keeping a strong focus on code quality and correctness
Participate in code reviews, knowledge-sharing sessions, and pairing to both learn from others and help maintain consistent standards across the codebase
Contribute across the stack when needed, including occasional Ruby work for Rails integration and authorization paths, or small frontend changes related to Knowledge Graph features (for example, Software Architecture Map UI plumbing)
Requirements
Professional experience building and maintaining backend systems in production, with an understanding of reliability, maintainability, and how to support services over time (incident responses, and follow-ups, etc)
Proficiency in at least one modern backend language and strong interest in Rust, with either prior Rust experience or clear evidence you can ramp quickly and deliver in a Rust-first, performance-sensitive codebase
Some exposure to distributed data or analytics systems (for example, OLAP databases, Kafka
or NATS-style messaging, or change data capture (CDC) pipelines), or strong motivation to develop those skills in this role
Interest in graph data modeling and query patterns (property graphs, multi-step (n-hop) traversals, aggregations), and willingness to learn the tools and concepts used in Knowledge Graph over time
Practical experience (or strong interest) using AI tools in day-to-day development, along with a thoughtful approach to validating outputs and integrating AI into your workflow
A language-agnostic mindset and evidence that you can pick up new languages and frameworks as needed (for example, Ruby, Go, or TypeScript/Vue where the work touches adjacent systems)
Solid fundamentals in system design for your level, including the ability to reason about trade-offs, ask good questions, and align your implementation work with documented architectural decisions
Comfort working in a low-process, high-ownership environment where you take responsibility for your work, communicate progress clearly, and help refine problem statements with your teammates
Strong written communication and comfort collaborating asynchronously across time zones in an all-remote team
Tech Stack
Kafka
Ruby
Ruby on Rails
Rust
SDLC
TypeScript
Vue.js
Go
Benefits
Benefits to support your health, finances, and well-being
Flexible Paid Time Off
Team Member Resource Groups
Equity Compensation & Employee Stock Purchase Plan