SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
GitLab is seeking a Senior Software Engineer to design and build GitLab Duo CLI, bringing AI-assisted experiences into developers' terminal workflows. You'll work primarily in TypeScript across frontend and backend, making key architectural decisions about the CLI's future direction while collaborating with the Developer Clients group and wider AI Clients stage.
In this role, you'll own the full lifecycle of Duo CLI features—from problem definition with Product through implementation, rollout, and iteration. You'll build interactive terminal experiences with careful command and flag design, clear output formatting, scripting-friendly behavior, and backward compatibility. You'll drive reliability, observability, and performance improvements, measuring success through usage metrics and reliability data while reducing technical debt as the product scales.
You'll provide technical leadership by breaking down complex problems, aligning on long-term direction, and maintaining high standards for code quality, performance, and reliability. You'll champion product quality and developer experience through thoughtful code reviews and mentorship. When needed, you'll contribute across Developer Clients, including the JetBrains plugin (Kotlin) and VS Code extension (TypeScript), to ensure shared features and cross-platform consistency.
Key projects include Duo CLI, GitLab Language Server, GitLab Duo plugin for JetBrains IDEs, and the GitLab Duo extension for VS Code. You'll collaborate closely with engineers across Developer Clients and the Duo Client SDK and Duo Chat groups to make GitLab Duo fast, intuitive, and deeply integrated wherever developers work.
You bring strong TypeScript proficiency and genuine interest in developer tooling and CLI design. You have hands-on experience building or maintaining command-line tools, with deep knowledge of command/flag design, terminal UIs, output formatting, scripting-friendly behavior, and backward compatibility. You're comfortable owning technical problems end-to-end, making sound architectural trade-offs, and guiding other engineers through code reviews and mentorship. You communicate clearly in written and spoken English and thrive in fully remote, largely asynchronous environments.