全栈工程师(TypeScript),人工智能工程:Duo 客户端 SDK
Fullstack Engineer (TypeScript), AI Engineering: Duo Client SDK
GitLab 是 DevSecOps 的智能编排平台。GitLab 使组织能够提高开发人员的生产力,提升运营效率,降低安全和合规风险,并加速数字化转型。超过 5000 万注册用户,超过 50% 的财富 100 强企业* 信任 GitLab 来更快地交付更优质、更安全的软件。
我们产品中构建的原则也体现在团队的工作方式中:我们把 AI 视为核心的生产力倍增器,所有团队成员都被期望将 AI 融入日常工作中,以推动效率、创新和影响力。GitLab 是职业加速、创新繁荣、每个声音都受重视的地方。我们的高性能文化由价值观和持续的知识交流驱动,使团队成员能够在与行业领袖合作解决复杂问题的过程中充分发挥潜力。与我们共同创造未来,一起打造改变世界软件开发方式的技术。
*Fortune 500® 是 Fortune Media IP Limited 的注册商标,经许可使用。声明基于 GitLab 数据。财富 100 强指的是 2025 年 6 月发布的 2025 年财富 500 强榜单中排名前 20% 的公司。财富和 Fortune Media IP Limited 与 GitLab 没有隶属关系,也不认可或推荐 GitLab 的产品或服务。
职位概述
作为 GitLab Duo 客户端 SDK 团队的一名全栈工程师,你将构建每个 GitLab Duo 客户端的共享基础。目前,支持编辑器中 Duo 功能的逻辑位于 GitLab 语言服务器中。我们将它提取为真正的软件开发工具包(SDK):一组版本良好的 TypeScript 包,编辑器扩展、我们基于网页的 Duo Chat 以及最终的外部应用都可以使用。
你将在前端和后端系统中使用 TypeScript 工作。你将设计 SDK 的 Node.js 核心和公共应用程序编程接口(API),并使用它进行客户端开发。这项工作要求你对界面、版本控制和向后兼容性同样重视,因为其他工程师会依赖你所构建的内容。
你会有高级和资深工程师在身边协助设计。你将负责作用域包的实现,并在团队协作进行更大架构变更的同时,独立完成改进并最小化指导。
一些项目示例:
- Duo 客户端 SDK,从 GitLab 语言服务器中提取可版本化、可发布的包
查看英文原文
GitLab is the intelligent orchestration platform for DevSecOps. GitLab enables organizations to increase developer productivity, improve operational efficiency, reduce security and compliance risk, and accelerate digital transformation. More than 50 million registered users and more than 50% of the Fortune 100* trust GitLab to ship better, more secure software faster.
The same principles built into our products are reflected in how our team works: we embrace AI as a core productivity multiplier, with all team members expected to incorporate AI into their daily workflows to drive efficiency, innovation, and impact. GitLab is where careers accelerate, innovation flourishes, and every voice is valued. Our high-performance culture is driven by our values and continuous knowledge exchange, enabling our team members to reach their full potential while collaborating with industry leaders to solve complex problems. Co-create the future with us as we build technology that transforms how the world develops software.
*Fortune 500® is a registered trademark of Fortune Media IP Limited, used under license. Claim based on GitLab data. Fortune 100 refers to the top 20% ranked companies in the 2025 Fortune 500 list, published in June 2025. Fortune and Fortune Media IP Limited are not affiliated with, and do not endorse products or services of GitLab.
An overview of this role
As a Fullstack Engineer on the Duo Client SDK team at GitLab, you'll build the shared foundation for every GitLab Duo client. Today, the logic that powers Duo in editors lives inside the GitLab Language Server. We're extracting it into a true software development kit (SDK): a set of well-versioned TypeScript packages that editor extensions, our web-based Duo Chat on GitLab.com, and eventually external applications can use.
You'll work in TypeScript across frontend and backend systems. You'll design the SDK's Node.js core and public application programming interface (API), and work in the clients that use it. The work rewards care about interfaces, versioning, and backward compatibility as much as features because other engineers will depend on what you build.
You'll have senior and staff engineers alongside you to help with design. You'll own the implementation of scoped packages and ship improvements with minimal guidance while collaborating with the team on larger architectural changes.
Some examples of our projects:
- The Duo Client SDK, extracting versioned, publishable packages from the GitLab Language Server
- The GitLab Language Server, rebuilt on top of the SDK as our polyglot surface
- Duo Chat on the web, as one of the SDK's first consumers
What you'll do
- Develop secure, well-tested, and performant TypeScript features that solve technical problems of moderate scope and complexity.
- Ship small features and improvements with minimal guidance, writing tests with every merge request and contributing to code reviews and design discussions.
- Extract and publish TypeScript packages from the GitLab Language Server, migrating consumers incrementally so no parallel implementation is left to drift.
- Design durable public APIs with clear interfaces, semantic versioning, changelogs, and deprecation paths for external consumers.
- Build isomorphic core packages that isolate platform-specific behavior in adapters at the edges.
- Build and improve SDK client surfaces, including Vue 3 components in Duo Chat on the web, in collaboration with product, design, and engineering teams.
- Strengthen credential handling across hosts, including bearer tokens, session cookies, and CSRF protection.
- Optimize bundle size, startup cost, and dependency weight for browser consumers, and support a Tier 2 on-call rotation for urgent engineering issues.
What you'll bring
- Strong proficiency with TypeScript across frontend and backend systems, including experience building and maintaining Node.js services.
- Experience with modern build and packaging tools, including monorepos, multi-module builds, ECMAScript modules (ESM), and dependency management.
- Experience with Vue 3 and the Composition API, or comparable component-based frontend experience and a willingness to learn Vue.
- Experience designing APIs that other people use, with the ability to explain what you'd do differently.
- Understanding of the differences between running code in Node.js and in the browser, and how to write code that works in both.
- A security-minded development approach, including careful credential handling and performance optimization.
- Ability to communicate clearly and concisely in writing about technical problems, propose iterative solutions, and work effectively in an agile environment.
- Self-motivation, strong organizational skills, and the judgment to ask for help when needed while thriving in a fully remote organization aligned with GitLab's values.
About the team
The Duo Client SDK team sits in GitLab's AI Clients stage and works closely with teams building GitLab Duo experiences. We collaborate across client surfaces to make thoughtful technical decisions as the platform evolves. We work fully remotely and asynchronously across regions, in the open, following GitLab's values of transparency and open communication.
Remote-Global
The base salary range for this role’s listed level is currently for residents of the United States only. This range is intended to reflect the role's base salary rate in locations throughout the US. Grade level and salary ranges are determined through interviews and a review of education, experience, knowledge, skills, abilities of the applicant, equity with other team members, alignment with market data, and geographic location. The base salary range does not include any bonuses, equity, or benefits. See more information on our benefits and equity. Sales roles are also eligible for incentive pay targeted at up to 100% of the offered base salary.
United States Salary Range
$115,200—$194,400 USD
How GitLab Supports Full-Time Employees
- Benefits to support your health, finances, and well-being
- Flexible Paid Time Off
- Team Member Resource Groups
- Equity Compensation & Employee Stock Purchase Plan
- Growth and Development Fund
- Parental Leave
Please note that we welcome interest from candidates with varying levels of experience; many successful candidates do not meet every single requirement. Additionally, studies have shown that people from underrepresented groups are less likely to apply to a job unless they meet every single qualification. If you're excited about this role, please apply and allow our recruiters to assess your application.
Country Hiring Guidelines: GitLab hires new team members in countries around the world. All of our roles are remote, however some roles may carry specific location-based eligibility requirements. Our Talent Acquisition team can help answer any questions about location after starting the recruiting process.
Privacy Policy: Please review our Recruitment Privacy Policy. Your privacy is important to us.
GitLab is proud to be an equal opportunity workplace and is an affirmative action employer. GitLab’s policies and practices relating to recruitment, employment, career development and advancement, promotion, and retirement are based solely on merit, regardless of race, color, religion, ancestry, sex (including pregnancy, lactation, sexual orientation, gender identity, or gender expression), national origin, age, citizenship, marital status, mental or physical disability, genetic information (including family medical history), discharge status from the military, protected veteran status (which includes disabled veterans, recently separated veterans, active duty wartime or campaign badge veterans, and Armed Forces service medal veterans), or any other basis protected by law. GitLab will not tolerate discrimination or harassment based on any of these characteristics. See also GitLab’s EEO Policy and EEO is the Law. If you have a disability or special need that requires accommodation, please let us know during the recruiting process.