logo[мetahunt]
> Djinni
senior

Automation QA Engineer

playwrightjavascripttypescriptany one ofjavascriptnode.jscypressseleniumany one ofcypresspythonpytestreactwebsocketsrest-apichrome devtoolslighthouseazure devopsgithub actionsjenkinsany one ofazure devopslinuxdockeraws ec2aws ecsaws eksany one ofaws ec2aws s3aws cdkaws iamcloudformationcloudwatchterraformvpcany one ofaws cdk
javaelectronvitestjeststorybookaccessibilityopentelemetry
englishB2
experience5+ years
domainFintech
> full description

Project Description:

We build an in-house trading platform covering order management, execution, and data analysis. The front end is a set of TypeScript/React apps running in a desktop container and streaming real-time data.
We're hiring a hands-on SDET to own UI test automation: extend our Playwright framework, make streaming, multi-window workflows testable, and add quality gates to CI, including front-end performance. You'll co-architect and co-own a unified testing framework with our backend SDET. It covers UI, API, messaging, data and performance tests in one place.

 

Responsibilities:

• Co-architect and co-own, with our backend SDET, a unified testing framework that covers every area we test:
◦ Shared foundations: fixtures, test data, configuration, environments and reporting are shared across UI, API, Kafka, database and performance suites.
◦ Cross-layer scenarios: one scenario can cross layers. For example, a test places an order in the UI, then checks the resulting event and the database record.
◦ One quality view: results from every suite feed a single view of release quality.
• Design, build and maintain end-to-end and component tests with Playwright and TypeScript for trading and analytics workflows.
• Extend our shared test toolkit: page objects, fixtures, and mocks of desktop-container APIs.
• Build front-end harnesses for real-time data: mocked WebSocket and REST responses, controlled test data, and deterministic replay of streaming updates.
• Cover UI failure modes: disconnects and reconnects, expired sessions, permission failures, bursty feeds, and stale data.
• Own front-end performance testing:
◦ Startup and responsiveness: measure app startup and time-to-first-data, and check that the UI stays responsive under high update rates.
◦ Grid behaviour at scale: measure render and scroll performance of grids with tens of thousands of rows.
◦ Container resources: track memory growth and leaks in long-running desktop sessions, and CPU cost per window.
◦ Regression gates: turn the results into budgets that fail CI on a regression.
• Build and maintain isolated, on-demand test environments on Linux and AWS:
◦ Lifecycle: environments are created per branch or per run, start with seeded data and known state, and are torn down automatically.
◦ Isolation: test runs don't interfere with each other or with shared environments.
• Validate front-end/back-end contracts and payload schemas.
• Run UI suites in CI/CD: sharded parallel runs, scheduled regressions, and reporting on pull requests.
• Make failures diagnosable: Playwright traces, screenshots and video, and correlation with telemetry.
• Work with UI engineers, business analysts and traders to automate critical workflows and define QA acceptance criteria.
• Use AI-assisted tools where they help with writing, maintaining and triaging tests.

 

Mandatory Skills Description:

• 5+ years of UI test automation, including designing or significantly extending a framework.
• Strong TypeScript/JavaScript and Node.js skills, with substantial hands-on Playwright experience. Strong Cypress or Selenium experience plus willingness to move to Playwright is also fine.
• Working Python skills (pytest, Playwright for Python): test tooling, data setup, backend checks inside UI scenarios, and contributing to the shared framework.
• Experience testing React apps with complex data grids (AG Grid or similar), dynamic forms and heavy client-side state.
• Experience mocking network traffic in the browser (REST and WebSocket) and testing authentication flows.
• Front-end performance testing experience:
◦ Profiling: Chrome DevTools Performance and Memory panels, and the Lighthouse and performance APIs.
◦ Diagnosis: finding long tasks, layout thrashing and memory leaks.
◦ Budgets: setting performance budgets and enforcing them in CI.
• CI/CD experience with Azure DevOps (preferred) or Jenkins/GitHub Actions, and Git.
• Experience building isolated test environments:
◦ Linux: comfortable on the command line, with shell scripting, processes, networking and log troubleshooting.
◦ Docker: Docker and Docker Compose.
◦ AWS: EC2, ECS or EKS, S3, IAM, VPC and CloudWatch.
◦ Infrastructure as code: Terraform, CloudFormation or CDK.
• Strong reliability habits: isolated tests, deterministic waits instead of sleeps, controlled retries, and triage of flaky tests.
• Experience with test reporting and traceability (Playwright reports, Allure, Azure Test Plans, TestRail).
• Clear communication and good documentation.

 

Nice-to-Have Skills Description:

• Trading or buy-side experience: OMS/EMS, algos, positions, allocations, or risk.
• Java exposure, enough to read service code and contribute to backend suites in the shared framework.
• Desktop container automation: Electron, OpenFin, or similar.
• Component testing (Vitest or Jest). Storybook visual or interaction testing.
• Accessibility and visual-regression testing.
• React Profiler and familiarity with React rendering performance (memoization, virtualization).
• OpenTelemetry or similar real-user-monitoring tools, and using production RUM data to pick performance test scenarios.

 

Languages:

English: B2 Upper Intermediate