About JetBrains
We create intelligent software development tools for developers and teams. More than 15 million users, over 300,000 organizations, and 88 of the Fortune Global Top 100 companies rely on our products to solve real, complex problems. Our mission is simple: make development teams more productive and AI adoptable at scale.
What you’ll do
As part of the Kotlin Common Backend team, you’ll take ownership of the central pipeline that connects the compiler’s frontend with multiple backends. This is deep, technical work that directly influences how Kotlin code is transformed, validated, and optimized. You’ll make architectural decisions that improve compiler performance and memory usage without sacrificing backward compatibility. Working closely with other Kotlin teams, your efforts will shape the evolution of the language and improve the daily experience for Kotlin developers worldwide.
Day to day, you will:
- Develop and implement new language features.
- Implement and fine-tune intermediate representation (IR) lowering passes.
- Investigate and resolve complex compiler bugs and edge cases.
- Improve compiler performance and memory usage.
- Work with other Kotlin teams to shape how the language evolves.
- Help improve the developer experience for Kotlin users.
What you’ll bring
- Precision. You care about every detail – from clean architecture to edge cases.
- A strong sense of ownership. You’re comfortable taking on complex technical challenges.
- Clear communication. You can explain your thinking and justify your technical decisions to other experts.
- A collaborative mindset. You work well with teammates to find the best solutions.
- A long-term focus on quality. You prioritize maintainability and backward compatibility over quick fixes.
What you’ll need
- Proficiency in developing with Kotlin/JVM or Java.
- A deep understanding of algorithms and data structures.
- The proven ability to write clean, maintainable, and well-tested code.
- Experience in compiler development would be a definite plus.
- Experience developing Gradle plugins would be advantageous.
- Demonstrated success in optimizing JVM application performance would also be a plus.
What success looks like
In your first few months, you’ll dive into the compiler's central pipeline and start taking ownership of specific lowering passes and bug fixes. Over time, you’ll be making significant architectural contributions that measurably improve compiler performance and memory usage. Success means earning the trust of your team through clear communication, well-reasoned decisions, and code that leaves the Kotlin compiler cleaner and more robust than you found it.