In short: a fullstack TypeScript developer for a small team. We build VSCode plugins, evolve the VSCode codebase, and integrate AI tools.
What's this role about?
We're applied developers who build tools for other developers. We build the GIGA tools, and we're assembling a new team.
SberTech has a whole cluster of teams working on developer tooling: everything from complex, GitHub-scale systems to small command-line utilities. Among us are people who came from leading companies in the AI tooling industry (JetBrains, Huawei, Yandex, and others), as well as many who grew up professionally inside the company.
The stack of tools we've built resembles what Microsoft makes: GitVerse instead of GitHub, GigaCode instead of Copilot, Cloud.ru instead of Azure, GigaIDE Cloud instead of GitHub Codespaces, and so on. Everything a developer needs at their workstation.
Right now, we need to build a new desktop IDE for enterprise use on top of the Visual Studio Code codebase (in addition to the cloud-based VSCode-like IDE we already have, called GigaIDE Cloud). Essentially, it's a fork of VSCode with its own set of differences. And that's not the only task: there are plenty more tools to build in the future. As for VSCode, it's not the easiest job, because VSCode was never designed with the realities of a locked-down corporate environment in mind — and now we need to put together a secure, coherent user experience.
Your mission
Developers on our teams aren't there to build random little buttons out of some murky spec. A developer working on an online store may never buy a single thing from that store. With IDEs, AI, and other developer tools, that's not how it works. The whole point of the process is that developers build tools they use themselves. That means every developer is as involved as possible in creating the product as a whole: you'll take part in design, planning, implementation, delivery, and handling user feedback — and you'll actually shape the product. The result has to be something real programmers aren't embarrassed to use. Something people can trust — both the product and us. This role and this opening are for engineers who want to stay close to the most cutting-edge technology and move fast, without pointlessly cutting corners. It's about a small team — literally a handful of people — with a goal that's anything but small. We believe software development is going to change dramatically over the next 5 years, and we intend to be in the front row of that change.
What you'll do
Build products on top of the Visual Studio Code codebase — and beyond. You'll develop modifications to accommodate corporate standards, security and quality requirements, integration with AI tools, and much more. The distribution will need to be built, packaged, and shipped to real users.
Build infrastructure for programmers: AI agents, command-line utilities, MCP servers, REST APIs for internal subsystems like security scanners, and so on.
Work closely across our products and the AI products of SberTech and Sber. The people who build them often sit in the next room at the office, or in the same chat as us. If GigaCode needs something from the IDE, we listen; if the IDE needs something from GigaCode, they listen.
Build applications for a sizable user base. Our products may be used by thousands or even tens of thousands of users. They have to be reliable enough to earn trust, and interesting enough that installing them makes sense in the first place.
Build things that haven't existed before. Forking VSCode, OpenCode, and other open-source tools for enterprise use is fairly well-trodden territory. Here, you'll have to do things people don't usually do. A few examples: a closed-perimeter / air-gapped environment, air-gapped delivery, integration with security scanners, compliance.
What you don't need to know
There's no requirement to know how to build IDEs, VSCode, or its plugins — though that skill is a strong plus.
There's no requirement to understand AI at the level of an AI engineer — though that experience and knowledge are a plus.
What you do need to know
Write frontend and backend in TypeScript. Or a combined front-plus-back, if you've built desktop applications on platforms like Electron/Tauri and understand how that's done.
VSCode has its own approaches to UI, so you need to be ready not just to use the usual React infrastructure, but to write interfaces in general. Experience with more than one web framework, or your own ideas about how such frameworks should be written, is welcome. Having to quickly sketch out a plugin UI in VSCode (or in yet another new design system) shouldn't freeze you up, even if you've never done it before.
Be able to write "server-side" implementation code. Regular server-side development in Node.js and Bun is a good reference point. Knowing the specifics of plugins for VSCode, IntelliJ IDEA, and other IDEs is a big plus. We have almost no server-side high-load work (the "server" is our desktop application or a CLI utility), but "high load" can show up where you least expect it — for example, as saving tokens on AI model API calls or squeezing throughput out of local pipes.
Be willing to write code anywhere from 100% with AI to 100% by hand. The tools are GigaCode/GigaChat plus our own agents. We're building a tool for people who may write up to 100% of their code with AI. If you're fundamentally against that idea, this role unfortunately isn't for you — you simply won't be able to put yourself in that user's shoes and do the dogfooding. On the other hand, some things are still hard to write well with AI — custom algorithms, for instance. Understanding how CLI systems like Claude Code or Codex work, and experience with frameworks like Ink, will be a plus.
Use modern development practices: Git, CI/CD, releases, code review, working with issue trackers, and so on.
None of the points above require one-hundred-percent mastery. All of these parameters sit on a spectrum. For example, you might be good at backend (say, 80 out of 100), know frontend much less well (say, 40), have only the most basic grasp of DevOps (20), and have built an Electron app exactly once in your life. That's fine, and it's not a blocker for an interview. If you feel that everything written here describes you, but you have doubts about one criterion or another, reach out anyway.
Nice to have
A solid understanding of, and experience building, reliable and fast desktop tools or distributed systems. You may have your own opinions on UI/UX, correctness, failure modes, and behavior in production.
Product instinct: you care about how the tools you build actually feel to use in practice.
Tolerance for ambiguity: you can make progress on hard problems with incomplete requirements and half-written specs, learn quickly from the results you get, and course-correct without a manager standing over you steering from the outside.
Development speed without cutting corners in the wrong places. Experience shipping features fast while keeping the reasonable level of quality a small, tight-knit team needs.
An interest in agents and AI. You've dug into how an LLM works, how agents work and break, and what it takes to make an AI-native system run reliably in the real world.
Ability to use Python, Rust, Go. A huge number of AI tools are written in Python, modern AI products are built in Rust (like Zed and Warp), Go is very convenient for building small utility binaries for Windows, and so on.
Relevant industry experience: building IDEs or plugins for them, desktop applications, Electron/Tauri apps, AI tools, or experience working at an AI company or lab.
A degree from a program that matches the role. For example, a department with a focus on compilers, computational linguistics, or machine learning.