QA Engineer (Mid-level) — 2 positions
Threadcode Technologies · threadcodetech.com
Location: Kathmandu, Nepal (hybrid) · Type: Full-time · Openings: 2
About Threadcode
Threadcode Technologies is a Nepal-based software engineering company building products for international clients. Our flagship engagement is Event Logic — a Swedish SaaS platform for corporate event management, covering everything from event planning and supplier sourcing (RFPs, offers, bookings) to participant management and follow-up. The platform is white-labelled and multi-tenant: the same product runs under several partner brands, in six languages, for customers across the Nordics and Europe.
We are an unusually AI-forward engineering team. A large share of our code is produced through an AI-assisted development pipeline — structured plans, automated implementation, and machine-executed test recipes. That makes QA more important here, not less: the compile gate proves the code builds — you prove it works. We’re hiring two QA Engineers to strengthen that responsibility across the platform.
The role
You will test the Event Logic platform hands-on: executing and designing test cases, growing the automation suite, and driving work items through our QA stages with evidence to back every verdict. You’ll work as part of the QA function alongside developers here and the product owners in Sweden.
What you’ll do
- Run the QA cycle. Take work items through our QAT and UAT test stages in Azure DevOps — from “Ready to Test” through to sign-off — executing test cases, collecting evidence (screenshots, recordings), and moving states.
- Design tests, not just execute them. Our process deliberately separates the people who write the test plan from the people who write the code. You’ll turn requirements into executable test recipes — pre-conditions, actions, observable assertions — that both humans and our automated pre-push validation gate run.
- Contribute to the E2E automation suite. We run a Playwright + playwright-bdd (Gherkin/TypeScript) automation repo with page-object models, a strict selector discipline, and i18n-aware assertions across a client × language matrix. You’ll write scenarios and step definitions, fix flaky tests, and keep your areas green.
- Practice regression-first bug handling. Every confirmed bug gets a deterministic replication recipe, a red→green verification (prove it broken, prove it fixed), and a permanent regression test at the right tier. No fix ships on “seems fine now.”
- Test what’s actually hard about the product. Multi-tenant data isolation across separately-sharded customer databases; white-label theming across 6+ brands; six UI languages; email and PDF flows that snapshot data at booking time; supplier-facing and organizer-facing sides of the same transaction.
- File bugs that get fixed. Structured, evidence-backed reports in Azure DevOps — numbered repro steps, expected vs. actual, severity/priority, screen recordings, environment context.
- Work inside an AI-assisted pipeline. Execute and review machine-run test playbooks, flag the checks that need a human eye (visual judgment, email content, cross-flow behaviour), and provide the attestation automation can’t.
What we’re looking for
Must have
- 2–4 years in software QA on a web product, with real ownership of features or areas you tested.
- Solid test-design fundamentals: you can take a requirement and produce concrete test cases with real pre-conditions, actions, and assertions — not a checklist of “verify it works.”
- Hands-on experience with at least one E2E automation tool — Playwright preferred; Cypress or Selenium with the willingness to go deep on Playwright also works — and basic TypeScript/JavaScript for writing and maintaining tests.
- Exposure to BDD/Gherkin or the willingness to learn it quickly — we’ll teach the conventions; you bring the judgment.
- API testing basics (REST, status codes, response shapes) alongside UI testing.
- Familiarity with an ALM/test-management tool — we use Azure DevOps — and disciplined, evidence-based bug reporting.
- Comfort working across multiple environments (local / QAT / UAT) and reasoning about test data and seeding.
- Good written and spoken English — your bug reports and test documentation are read by a Swedish product team.
Great to have
- Experience testing multi-tenant or white-label SaaS, or an understanding of why tenant isolation and per-brand theming are test dimensions.
- i18n/localization testing exposure (our product ships in Swedish, English, Danish, Norwegian, Finnish, and French).
- Page-object-model experience and an eye for maintainable, non-flaky test code.
- Curiosity about AI-assisted testing — using LLM agents to explore, generate, and heal tests. Much of our tooling works this way.
- Exposure to our broader stack: Grails/Groovy REST backends, Angular and Next.js frontends, PostgreSQL, email-delivery flows.
- ISTQB Foundation or equivalent is nice but no substitute for demonstrated judgment.
What we offer
- Real responsibility from day one: you test features end to end and your sign-off matters.
- Long-term, stable product work on a mature European SaaS platform — not project-hopping outsourcing.
- A modern QA setup most companies only talk about — automated pre-push validation gates, video-evidenced test runs, an established BDD suite — and mentoring to grow into it.
- A front-row seat to AI-assisted software development done seriously, where QA is designed into the pipeline rather than bolted on.
- A clear growth path: senior and lead responsibilities as the QA function scales.
- Direct collaboration with the Swedish product team; short decision paths; your voice reaches the people who decide.
- Competitive salary by Nepal market standards, hybrid working, and comfortable timezone overlap with Europe (afternoon syncs, focused mornings).
How to apply
Send your CV plus one thing you’re proud of — a test case suite you designed, an automated test you wrote, or a bug report so good it needed no follow-up meeting — to info@threadcodetech.com with the subject “QA Engineer”. We review applications continuously; two positions are open.