QA Automation Engineer — Playwright · Manual Testing · Agile
I've spent the last 2+ years breaking things on purpose — testing and automating enterprise systems that real people depend on. My work on AMRUT 2.0 (Government of India water infrastructure) and Inventory Management System (IMS) taught me that good QA isn't just scripts — it's knowing what to test and why. I write automation in JavaScript (Playwright) at work and TypeScript in personal projects.
I'm a QA Automation Engineer who genuinely enjoys finding bugs before users do. Over 2+ years, I've learned that the best QA happens when manual instinct and automation work together — not separately. I code in JavaScript at work and push myself with TypeScript in personal projects.
My most meaningful work has been on AMRUT 2.0 — a live Government of India SCADA dashboard monitoring water supply across Indian cities — and an Inventory Management System. On both, I didn't just run test cases. I caught a security flaw in RBAC, blocked a data integrity bug from reaching production, and designed a real-time testing protocol with the dev team from scratch.
I use AI tools (Claude, ChatGPT, GitHub Copilot, Cursor, Windsurf) the way a senior engineer would — for the boring parts, not the thinking parts. One rule I never break: no real credentials, IPs, or government data ever touches an AI prompt.
What I use at work and what I'm building independently
Manual and automation — both, simultaneously, every sprint
waitForResponse — intercepted API call before asserting child dropdownSame sprint, same feature, both happening in parallel
Every sprint I receive User Stories with Acceptance Criteria. I break them into test cases (happy path + negatives + edge cases), execute on staging, file bugs, retest fixes, and summarise results.
Automation isn't a separate phase — I write scripts for the same features I'm testing manually, within the same sprint. Work automation is in JavaScript; personal framework projects are TypeScript.
waitForResponse to intercept API call before asserting dropdownSpecific tools, specific moments — decisions always mine
I use AI at specific, bounded moments — edge case brainstorming, boilerplate scaffolding, debugging, and refactoring. Test strategy, execution, and sign-off are always mine. Hard rule: no real server IPs, credentials, DB values, or government data goes into any AI tool. All prompts are sanitized generic descriptions.
Handles boilerplate so I focus on selector accuracy, test logic, and edge case coverage.
Used when a test failure needs deep investigation — trace-based debugging with AI-assisted explanation.
Used for large-scope refactoring in personal TypeScript projects — reviews across multiple files.
JavaScript for work · TypeScript for personal skill building
8 modules tested on a live Government of India dashboard monitoring 50+ water pumping stations — real sensor data every 15–60s, remote controls, role-based access.
150+ manual test cases · 50+ automated Playwright scripts · Found RBAC security bug · Designed real-time test protocol with developer.
7 modules tested on an internal IMS — inward/outward stock, shortage detection, 1000+ product categories (3-level hierarchy), PDF/Excel exports.
150+ manual test cases · 60+ automated scripts · Critical data integrity catch blocked release · Solved AJAX cascade with waitForResponse.
Role-based field operations — Sites → Tubewells → LCS (3-level hierarchy), media uploads, audit trails, compliance workflows.
60+ manual test cases · 60+ automated scripts covering CRUD across all hierarchy levels, upload edge cases, access control end-to-end.
JS→TS migration practice — typed POM classes, interfaces, explicit return types. Allure reports auto-published to GitHub Pages on push.
Login (multi-role), products, cart, checkout — smoke + regression tagged suites, externalized test data.
Cross-browser test framework — typed page objects, externalized test data (users.json, products.json), screenshot + video on failure.
Auth, product management, cart, full checkout — runs on all 3 browsers.
Typed API test framework — typed client layer, DEV/QA environment config via env var, reusable assertion helpers.
Full CRUD coverage + negatives: GET (pagination), POST (create + missing fields), PUT (update), DELETE (valid + invalid IDs).
Open to QA Automation Engineer & SDET roles
Looking for QA Automation Engineer or SDET roles — I bring Playwright automation (JS + TS), hands-on manual testing, Agile experience, and an AI-augmented workflow, all delivered simultaneously on real enterprise projects.