At JetBrains, we have a passion for building the strongest, most effective developer tools in the world. Our tools are designed to give developers the freedom to grow, discover, and create. Over eight million of the world's most dynamic developers speed up their workflows using our products, which help them stay focused on code design and the big picture, allowing them to deliver more creative and effective results.
The remote development functionality in JetBrains products redirects IDE-heavy processing from a local machine to a powerful remote server, reimagining how developers work. With hardware performance no longer a limitation, developers can work from anywhere while benefiting from improved security, stability, and reliability.
We're looking for a QA Automation Engineer to join the Remote Development team and help ensure that the products software engineers around the world rely on daily are of the highest quality.
You'll work alongside QA Engineers to design and implement automated testing scenarios that catch issues before they reach our users, cover regressions with automated tests, and improve automation processes within the team.
What you'll do
Core responsibilities
Test automation
- Design, develop, and maintain automated tests (UI, E2E, functional, and integration) across multiple platforms and environments: Linux, Windows, macOS, Docker, and WSL.
- Expand test coverage for new and existing functionality.
- Monitor automated test execution results.
- Debug and troubleshoot test failures, distinguishing product issues (regressions) from infrastructure-related issues (including test, framework, or environment).
- Optimize test execution time and reliability.
- Improve test automation stability and contribute to automation frameworks.
Quality assurance
- Report bugs in YouTrack and verify that they are properly fixed and backported.
- Participate in release quality assessments.
- Collaborate with QA and developers on testability and quality improvements.
- Help define test strategies and quality gates for your team.
- Support manual QA activities when needed.
Continuous improvement
- Define and track quality metrics, including testing coverage, failure rate, and flakiness.
- Identify gaps in test coverage and propose solutions.
- Improve domain-specific test infrastructure and CI/CD pipelines within your team's scope.
- Share knowledge about automation best practices with other team members.
- Work with the tooling team to adopt new frameworks and practices.
What we're looking for
Required skills
Technical foundation
- Proven experience in test automation.
- Solid programming skills in Kotlin or Java and a good understanding of the JVM.
- Experience with test frameworks: JUnit or TestNG.
- Understanding of software testing principles and methodologies.
- Familiarity with CI/CD tools (TeamCity or similar).
- Experience with reporting tools (Allure or others).
- Version control experience (Git).
Quality mindset
- The ability to isolate root causes and distinguish product bugs from environment issues.
- Attention to detail while maintaining focus on overall quality goals.
Collaboration
- Excellent communication skills in English, both written and verbal.
- Experience working in cross-functional teams and collaborating with other teams.
- Comfort with giving and receiving constructive feedback.
- The ability to grasp new concepts quickly and to work both in a team and independently.
Nice to have
- Experience testing developer tools, IDEs, and desktop applications.
- Experience building automated testing infrastructure and processes.
- Experience in performance testing.
- Experience in manual testing.
#LI-DS1
We process the data provided in your job application in accordance with the Recruitment Privacy Policy.