About the role
We are looking for a QA Automation Engineer with a strong Java background to join our team. You will design, build, and maintain automation frameworks for both UI and backend layers, work closely with development teams in Agile environments, and contribute to quality processes across real client projects.
What we're looking for
Core Java
Solid command of Java - OOP principles, collections, generics, exception handling, and multithreading basics. Comfortable with Maven or Gradle for dependency management. Familiarity with Spring (Core, Boot, or Spring Data) is a strong plus, especially for projects involving service-layer or integration testing.
UI Automation
Hands-on experience with Selenium WebDriver or Selenide. Proficiency with Page Object Model and ability to build maintainable, scalable test suites. Experience with TestNG or JUnit 5 as a test runner, and Allure or similar for reporting.
API & Backend Testing
Good understanding of REST principles - HTTP methods, status codes, headers, auth mechanisms (OAuth2, JWT, API keys). Practical experience with RestAssured for automated API testing. Postman or similar tools for exploratory and contract testing.
Database
Ability to write SQL queries for test data preparation and result validation - joins, subqueries, aggregation functions. Experience with MySQL, PostgreSQL, or similar RDBMS.
Workflow & Tools
Comfortable working in an Agile/Scrum environment. Experience with Git - branching strategies, PRs, code review. Working knowledge of Jira or a similar issue tracker.
Nice to have
Experience with BDD frameworks - Cucumber + Gherkin
Familiarity with CI/CD pipelines - Jenkins, GitLab CI, or GitHub Actions; understanding of how tests are triggered and results surfaced in a pipeline
Spring Framework knowledge - Spring Boot, Spring Data JPA, or integration testing with Spring context
Basic Docker skills - running containers locally for test environments
Experience with JDBC for direct database access within test code