About the job
Join Progressoft as a Software Development Engineer in Test (SDET) and take the lead in designing and implementing automated testing frameworks for our cutting-edge applications. You will work with technologies including Playwright for UI testing, REST Assured and Postman for API testing, and k6 for performance testing, all integrated into our CI/CD pipelines, primarily utilizing GitLab. Ideal candidates will have solid experience with Docker/Compose, Java, TypeScript, bash scripting, and SQL for direct database validation. A comprehensive understanding of testing processes, defect lifecycles, and various test design techniques is crucial for success in this role.
Key Responsibilities:
- Develop and maintain automated tests across web UI (Playwright), APIs (REST Assured with JSON Schema validation), and performance assessments (k6).
- Collaborate closely with product and engineering teams to define acceptance criteria, ensure designs are testable, review user stories, and prioritize issues based on severity.
- Manage GitLab CI/CD processes by designing and maintaining .gitlab-ci.yml for testing purposes, utilizing GitLab Runners (Docker executor), optimizing caching and parallelization, and ensuring pipelines are functional.
- Present test results in Merge Requests, including JUnit XML test reports, Playwright HTML reports, and k6 performance summaries.
- Employ Docker and Docker Compose to establish reliable testing environments and containerize test tools.
- Stabilize test suites by addressing flaky tests, tuning retries, refining logs, and enhancing tracing.
- Develop a risk-based test strategy that balances automated, exploratory, and manual testing.
- Create documentation for frameworks and guidelines; mentor developers and quality control teams on best testing practices.
Qualifications:
Applicants should have hands-on experience with at least two of the following technologies (and a willingness to learn the third):
- Playwright (TypeScript/JavaScript): experience with locators, fixtures, Page Object Model, and trace viewer.
- REST Assured (Java): familiarity with RequestSpec/ResponseSpec, negative and edge-case testing, and JSON Schema validation.
- k6: knowledge of smoke, baseline, and load testing, including performance thresholds such as p95.
- CI/CD: ability to contribute to automated quality gates by integrating tests, reports, and metrics into pipelines, particularly with GitLab CI/CD (.gitlab-ci.yml, jobs, caching, artifacts, and test reports). Experience with other CI/CD tools (e.g., Jenkins or GitHub Actions) is also welcome.
- Shell scripting (bash or equivalent).
- Docker: experience with Dockerfiles, Compose, and local test services, along with basic container networking.
- Programming: proficiency in Java/Kotlin and/or TypeScript/JavaScript; solid object-oriented programming and clean coding practices; familiarity with Git workflows.
- Database and SQL: ability to write queries for direct validation of system behavior and data integrity.
- Testing foundations: strong understanding of the software testing process, defect lifecycle, and the distinction between severity and priority; ability to produce clear, reproducible bug reports.
