Fullstack Engineer (Typescript), Create: Editor Extensions

April 28, 2024

Job Description

GitLab’s DevSecOps platform is utilized by over 100,000 organizations worldwide, enabling faster and more efficient software delivery. As one of the largest all-remote companies globally, with over 2,000 team members, GitLab promotes a culture where everyone can contribute. To delve deeper into Life at GitLab, explore further.

Overview of Role:

Within the Dev Sub-department’s Create Stage, the Create:Editor Extensions team specializes. The Create Stage encompasses various categories including Editor Extensions, Code Suggestions, Web IDE, and Remote Development. This team focuses on enhancing developers’ experience directly within their Integrated Development Environments (IDEs), where they primarily operate.

Responsibilities:

The role primarily involves working on the VS Code extension, engaging in cutting-edge AI enhancement projects. Key projects include VS Code Language Server Integration and integrating a code parser to enhance Code Suggestions. Backend topics include TypeScript, Node.js, Language Server, and Git, while frontend topics encompass TypeScript, CSS, and Vue.

Some examples of our projects:

  • VS Code Language Server Integration
  • Integrate a code parser to enhance Code Suggestions

What you’ll do

  • Backend Topics: TypeScript, Node.js, Language Server, Git
  • Frontend Topics: TypeScript, CSS, Vue
  • Advocate for improvements to product quality, security, and performance that have a particular impact across your team.
  • Solve technical problems of high scope and complexity. Exert influence on the overall objectives and long-range goals of your team.
  • Experience with performance and optimization problems, particularly at large scale, and a demonstrated ability to both diagnose and prevent these problems
  • Help to define and improve our internal standards for style, maintainability, and best practices for a high-scale web environment.
  • Maintain and advocate for these standards through code review.
  • Represent GitLab and its values in public communication around broader initiatives, specific projects, and community contributions.
  • Provide mentorship for Junior and Intermediate Engineers on your team to help them grow in their technical responsibilities and remove blockers to their autonomy.
  • Confidently ship moderately sized features and improvements with minimal guidance and support from other team members.
  • Collaborate with the team on larger projects.
  • Improve the engineering projects at GitLab via the maintainer program at own comfortable pace, while striving to become a project maintainer.

What you’ll bring

  • Mandatory: significant professional experience with Typescript or JavaScript
  • Mandatory: professional experience with VS Code Extension
  • Language Server Expertise
  • Visual Studio Code API
  • Implement and Optimize Language Servers: Develop and optimize Language Servers for specific programming languages, ensuring efficient communication with code editors.
  • Language Server Protocol (LSP) Mastery: In-depth understanding and practical experience with the Language Server Protocol, facilitating seamless integration between language servers and code editors.
  • Understanding Extension Points: VS Code provides various extension points, such as editors, languages, themes, and more. Understanding how to leverage these extension points to enhance or extend the functionality of VS Code is key.
  • Proficiency in the English language, both written and verbal, sufficient for success in a remote and largely asynchronous work environment
  • Demonstrated capacity to clearly and concisely communicate about complex technical, architectural, and/or organizational problems and propose thorough iterative solutions
  • Experience with performance and optimization problems and a demonstrated ability to both diagnose and prevent these problems
  • Experience owning a project from concept to production, including proposal, discussion, and execution
  • Self-motivated and self-managing, with strong organizational skills
  • Share our values, and work in accordance with those values
  • Ability to thrive in a fully remote organization
  • Ability to use GitLab
  • Comfort and familiarity with our code review process

About the team

We are currently focused on bringing Code Suggestions to more IDEs, by building dedicated extensions for VS Code, JetBrains, Visual Studio, Neovim, and GitLab’s Web IDE. We work on multiple projects written in Typescript, Kotlin, C#, and Lua.

Thanks to our Transparency value, you can see how we work in our Team page. You can even see our roadmaps (Editor Extensions, Code Suggestions) and listen to some of our meetings.

How GitLab will support you

  • Benefits to support your health, finances, and well-being
  • Flexible Paid Time Off
  • All remote, asynchronous work environment
  • Team Member Resource Groups
  • Equity Compensation & Employee Stock Purchase Plan
  • Growth and development budget
  • Parental leave
  • Home office support

Equal Opportunity Workplace:

GitLab is committed to equality and diversity, with recruitment, employment, and advancement based solely on merit. Discrimination or harassment based on any characteristic is not tolerated.

Privacy Policy:

The recruitment process is governed by GitLab’s Privacy Policy to ensure candidate privacy.

GitLab values candidates from diverse backgrounds and is dedicated to creating an inclusive workplace environment.