Kotlin Engineer – (Senior/Staff)
VirtusLab is a leading European software consulting and engineering company, home to over 350 EU-based professionals. Our mission is to craft clean code and practical solutions with precision and purpose. We foster a dynamic culture rooted in strong engineering, a sense of ownership, and transparency, empowering our team. As part of the expanding VirtusLab Group, we offer a compelling environment for those seeking to make a substantial impact in the software industry within a forward-thinking organization.
About the role
We are looking for engineers interested in building various tooling using mainly Kotlin. Our team is working on IntelliJ plugin, IDEs, coding agents or frameworks for Local AI inference. Your job will be focused 100% on technology and your users will be developers. You will work withing, small, flexible team and you will have a lot of authonomy: you will be responsible for design, scope, testing and implementation. You will work with tooling engineers, and you will be part of an organisation specialized in developer tooling.
We are building a desktop application for deploying and configuring local inference on local devices (e.g. NVIDIA Spark / DGX Spark), managing model lifecycle (start/stop), and connecting coding agents like Claude Code and Codex to locally hosted models. Currently an internal MVP, on the road to open source.
Kotlin, Compose Desktop (with JetPack Compose roots), kotlinx.coroutines, REST APIs for model deployment management
Agent layer: configuration files in toml/json/yaml, LLM proxy routing from agents to BE
Packaging: native installers — msi (Windows), deb (Linux), dmg (macOS)
Building a desktop control plane for local AI agents that abstracts away the messy parts of running LLMs on heterogeneous hardware — model lifecycle, proxy routing, agent configuration, and OS-specific quirks (path separators, signing, packaging) — while keeping the system extensible enough to evolve toward open source. Visualising model statistics and system load on top of a backend that actually does the deployment.
Small, startup-like team on the JetBrains side — no bureaucracy, direct contact with potential users, fast iteration. Code reviews as part of the process.
The project focuses on building and enhancing IDEs and core plugins within JetBrains platform that powered well-loved IDEs like IntelliJ, PyCharm, GoLand, PHPStorm, RubyMine and more. It involves implementing support for technologies and languages like PHP, Ruby, Scala, Bazel or Kotlin by working deeply with their ecosystems. The goal is to deliver stable, high-quality tools that improve the daily workflows of developers.
Kotlin, Java, Kotlin Coroutines, technology specific to the IDE/Plugin (e.g Ruby for RubyMind)
The core team consists of experienced engineers focused on specific JetBrains IDEs or plugins, working primarily with Kotlin. They collaborate closely with external contributors and users to deliver stable, high-quality developer tools.
What we expect in general
- Strong Kotlin skills or Strong Java expertise with knowledge of Kotlin
- Understanding of asynchronous and concurrent programming, at best with Kotlin Coroutines
- High agency and ability to drive work in a changing environment
- Engineering pragmatism: cutting complexity while keeping the system extensible
- Hands-on experience using LLMs daily, with the judgment to know when they help and when they don’t
- Fluency in English, with good communication skills for a remote-first team
- Self-motivation and the ability to take full ownership of features end-to-end
Nice to have
- Experience with different LLM agents and their configurations
- Experience with IDE development, especially around JetBrains IDEs
- Hands-on experience with developer tooling (compiler, build tools, linters, IDE, agents)
- Experience with creating OS-native, desktop applications
- Experience with creating GUIs using JVM (Swing, SWT, etc.)
A few perks of being with us
Apply now
"*" indicates required fields