Software Development Engineer in Test · QA Automation Engineer
I build maintainable UI and API automation that turns test execution into clear, inspectable release evidence.
A production-style quality framework validating the Toolshop e-commerce system across UI, REST API, accessibility, mobile, and cross-browser layers.
- Risk-based coverage of search, filtering, sorting, product details, cart calculations, checkout gates, and authentication
- Typed API contracts plus hybrid tests that compare browser behavior with the API source of truth
- Automated WCAG checks with axe-core and responsive validation using mobile emulation
- Chromium, Firefox, WebKit, and mobile CI jobs with retained HTML reports and failure evidence
- Docker execution, scheduled regression runs, safe test isolation, and a documented test strategy
32 independent tests · TypeScript · Playwright · axe-core · Docker · GitHub Actions
Explore the repository · View the successful CI run
End-to-end UI and REST API automation for the Expand Testing practice platform.
- React Notes registration, authentication, and note-management journeys
- Dropdowns, checkboxes, hover states, uploads, iframes, dialogs, popups, and dynamic controls
- REST API health, authentication, profiles, CRUD, authorization, and validation
- Independent synthetic users with automatic account cleanup
- HTML and JUnit reports with screenshots, videos, and Playwright traces
30 focused tests · UI + API · TypeScript · Playwright Test · GitHub Actions
Watch the 60-second demo · Explore the repository
A Java API automation framework validating meaningful contracts and behavior against DummyJSON.
- Authentication and bearer-token flows with safe negative coverage
- Simulated POST, PUT, PATCH, and DELETE operations
- JSON Schema contract validation and expressive AssertJ assertions
- Pagination, projection, sorting, search, filtering, and user-scoped resources
- Reusable client/configuration layers with environment overrides and failure-only logging
- JUnit XML and Allure-compatible evidence preserved by CI
27 independent tests · Java 21 · REST Assured · JUnit 5 · GitHub Actions
- Assert meaningful user outcomes and API contracts—not just successful clicks or status codes.
- Keep tests independent, repeatable, and responsible with explicit data isolation and cleanup.
- Prefer stable locators, typed helpers, reusable fixtures/clients, and environment-driven configuration.
- Make CI failures diagnosable through traces, screenshots, videos, request/response logs, and reports.
- Test negative paths safely without destructive or security-sensitive behavior.
Languages: Java · TypeScript
UI automation: Playwright Test · Page Objects · reusable fixtures · cross-browser testing
API automation: REST Assured · JSON Schema validation · authentication · CRUD
Test and assertions: JUnit 5 · AssertJ · axe-core accessibility testing
Delivery and evidence: GitHub Actions · Docker · Playwright HTML reports · JUnit XML · Allure results · traces
I’m interested in QA automation work where maintainability, product risk, and clear engineering evidence matter.

