Testing
- API testing
- End-to-end testing
- Integration testing
- Unit/controller testing
- Regression testing
- Manual testing
- Test-case design
- Defect reporting
open to remote work
Software QA Engineer , API & E2E Test Automation
Software QA Engineer with experience in API and browser test automation, manual testing, requirements analysis, and QA workflow design. Contributed tests using Cypress, Playwright, Jest, and Supertest across registration and event-management platforms.
01 / about
I’m a Software QA Engineer who works across API and browser-level test automation, manual testing, requirements analysis, and QA workflow design. My test contributions use Cypress, Playwright, Jest, and Supertest on registration and event-management platforms for BMI Global Education, the international student-fair organiser that is part of Times Higher Education.
My background spans QA, product management and UX design, which shapes how I work: I start from the specification, write down what “correct” means for each role, rule and failure path, and only then automate. When something breaks, I write it up so a developer can act on it — reproduction steps, expected versus actual behavior, and evidence.
My work is QA automation, specifications, documentation, and workflows. I don’t present it as implementing production features, and I’m deliberate about the difference between what I authored, what I verified, and what shipped. How I report my work →
02 / highlights
Repository-audit figures as of Q4 2026. Each is labelled by what it actually measures — these are authored or declared counts, not test-execution or pass results.
40 + 40
specifications and matching test-case documents authored
QA repo (eis-qa)
5
GitHub Actions QA workflows added or changed
QA repo · standards check, browser-test run, 3 documentation-sync workflows. Merge-blocking enforcement not verified.
77
retained test suites with test definitions (94 historically added)
API repo · suites, not individual cases; moves and placeholders excluded
178
Cypress / browser E2E test cases across 27 suites
eis repo · declared cases; not execution results
532
authored commits, Q4 2025 – Q4 2026
QA repo (eis-qa) · includes 5 explicitly Copilot-coauthored
170
bugs opened (150 closed)
146 in the eis repo (136 closed) · 24 general, api repo included (14 closed) · opened ≠ fixed; others’ fixes are not claimed
Private BMI Global Education repositories are not linked; descriptions are sanitized. Commit counts measure committed work, not test runs or business impact.
03 / skills
Counts are authored commits touching tool-related tests, helpers or setup — not tool executions or pass results, and they overlap.
| Tool | Where | Commit evidence |
|---|---|---|
| Cypress | eis repo; fairs-js repo | 106 in eis · 16 in fairs-js |
| Jest | api repo; QA repo | 210 in api · 13+ in QA repo |
| Supertest | api repo; QA repo | 157 in api · 13+ in QA repo |
| Playwright | QA repo | 3 commits (4 including support tooling) |
04 / featured work
Eight stories in Situation → Task → Action → Result form. Where I haven’t measured an outcome, the result says so.
Not claimed Administrative time savings and release-speed improvements were not measured.
Not claimed No reduction in misunderstandings or production defects was measured.
Not claimed Successful production migrations or reduced migration incidents.
Not claimed No reduction in flaky-test failures was measured.
Not claimed Required merge-blocking enforcement was not verified; synchronization workflows are not quality gates.
Not claimed This does not establish a delegated coding-agent task or formal approval of the production implementation.
Not claimed Declarations are not passing results, and 717 is not a count of executed requests. The original (221) and replacement (216) registration suites are separate snapshots, not additive.
Not claimed This isn’t production sign-off — completed production retesting was not verified.
05 / ai-assisted qa
Copilot Spaces and custom agent configurations designed with explicit guardrails: read the specification first, limit changes to QA artifacts, keep humans in control of validation.
GitHub Copilot Spaces · GitHub Issues
A Copilot Space that turns informal bug descriptions, screenshots and supporting links into structured issue reports for an event-management platform.
Copilot · GitHub Actions · Playwright · Jest · Supertest
A specification-first workflow connecting specifications, test cases and automated tests through shared identifiers and repository standards.
Copilot · Cypress · GitHub Actions
A repository-specific Copilot workflow for Cypress coverage auditing and maintenance, comparing specs, test cases and existing tests before proposing changes.
GitHub Projects · GitHub Issues · Copilot
An AI-assisted bug-reporting workflow and structured Projects board linking specification-based issues with development progress, QA validation and release tracking.
Specification & QA governance
The BMI engineering team governs delivery from the specification up, and has published case studies on QA governance and AI-assisted engineering. These are the team practices where my QA work fits. Each card separates the team practice from my part in it.
Team practiceSpecifications, test cases and automated tests are matched to each other and checked automatically when they change.
My partAuthored 40 specifications and 40 matching test-case documents in the QA repo, and added validators for metadata, naming and ID-based traceability that run through GitHub Actions on pushes and pull requests.
Team practiceSpecification and test content is kept consistent across the repositories it governs when any one of them changes.
My partContributed documentation-synchronization workflows across the QA, application and API repositories (six commits across three workflows in the API repo).
Team practiceAI agents interview the author on each new requirement before specs and tests are drafted, and are kept away from application code.
My partConfigured custom Copilot agents for specs, test cases and tests with structured interviews, approval gates and a limit of changing QA artifacts only; unresolved technical questions go to developers.
Team practiceEngineering work is tied to a specification reference, an owner and test-coverage evidence.
My partDefined feature-to-specification mappings, contributed the bug-report and QA-request templates, and set up the board’s documentation tracking field. Tickets raised before spec-driven development began show “No Documentation” (277 on the board below).
Team practices are described in the engineering lead’s own case studies; I claim only the “My part” lines. Those lines are authored or configured work, and the sync workflows transfer documentation rather than block merges.
GitHub Projects · EIS board snapshot · Q4 2026
The EIS Projects board held 356 items. Some charts leave out empty or housekeeping categories, so they don’t each add up to that total. I structured the board’s fields, views and reporting; the items themselves were raised and worked by the whole team, so these are team-wide board counts — not individual output, defect rates or quality measures. Bars are scaled within each chart. Muted rows are items where the field is empty.
“To do” is items with no status set. The last row groups In Progress (4), Blocked / On Hold (4) and Next Season Release (4).
Critical blocks a release or breaks core flows; Deferred is not prioritized now. Excludes 24 items with no impact level.
The user types affected by the issue or feature.
“No Documentation” items were raised before spec-driven development began; spec tracking hasn’t yet been applied to them.
Recorded on 42 of the 356 items: issues reported or found through Smartlook session recordings. Some were change requests rather than defects.
Initial Deployment (Q3 2025) through Release 34 (Q4 2026), plus 79 items with no release assigned.
| Release | Quarter | Tickets |
|---|---|---|
| Initial Deployment | Q3 2025 | 64 |
| Release 1 | Q3 2025 | 11 |
| Release 2 | Q3 2025 | 9 |
| Release 3 | Q4 2025 | 3 |
| Release 4 | Q4 2025 | 4 |
| Release 5 | Q4 2025 | 2 |
| Release 6 | Q4 2025 | 4 |
| Release 7 | Q4 2025 | 18 |
| Release 8 | Q1 2026 | 4 |
| Release 9 | Q1 2026 | 4 |
| Release 10 | Q1 2026 | 5 |
| Release 11 | Q1 2026 | 10 |
| Release 12 | Q1 2026 | 8 |
| Release 13 | Q1 2026 | 7 |
| Release 14 | Q1 2026 | 3 |
| Release 15 | Q1 2026 | 5 |
| Release 16 | Q1 2026 | 2 |
| Release 17 | Q2 2026 | 4 |
| Release 18 | Q2 2026 | 1 |
| Release 19 | Q2 2026 | 4 |
| Release 20 | Q2 2026 | 1 |
| Release 21 | Q2 2026 | 11 |
| Release 22 | Q2 2026 | 11 |
| Release 23 | Q3 2026 | 7 |
| Release 24 | Q3 2026 | 8 |
| Release 25 | Q3 2026 | 6 |
| Release 26 | Q3 2026 | 6 |
| Release 27 | Q3 2026 | 10 |
| Release 28 | Q3 2026 | 11 |
| Release 29 | Q3 2026 | 9 |
| Release 30 | Q3 2026 | 6 |
| Release 31 | Q3 2026 | 6 |
| Release 32 | Q3 2026 | 4 |
| Release 33 | Q3 2026 | 5 |
| Release 34 | Q4 2026 | 4 |
| No Release | — | 79 |
Process documentation · Specification-first testing · FE/BE/QA collaboration
How a feature moves from requirements to production across frontend, backend and QA, with QA preparing specs and tests before code is written. Failed checks loop back to coding or spec revision.
FEBEQA
Prototype and PRD are discussed; an AI questioning agent helps clarify API scope.
QA
QA drafts specs and test cases; the team reviews and finalizes them.
QABE
QA prepares unit and integration tests before BE codes, then runs them when the API is ready.
FE
FE codes, tests locally, integrates with the backend and tests on staging.
QA
QA runs end-to-end tests once the UI is ready.
FEBE
FE presents the feature; once approved, FE and BE launch it.
QA
QA tests after launch, the final validation step.
Feedback loopsA failed test returns work to coding or spec revision; a rejected approval returns to the QA spec update.
06 / experience
Setup Phils Inc.
Client engagement: BMI Global Education, part of Times Higher Education
Top.legal GmbH
Top.legal GmbH
07 / platform context
My work formed part of a team-maintained platform ecosystem supporting international education fairs organised by BMI Global Education (part of Times Higher Education).
Read this first These figures describe system usage by the team’s platform. They are not growth or outcomes attributable to my individual work.
For wider context, the BMI engineering team’s published AI-assisted engineering case study describes the fairs programme as 60–80 fairs a year across 18 countries, supported by 14 systems. Those are the client’s figures, not mine, and I worked on a subset of those systems.
360+
institution bookings across 31 fairs in nine countries, Spring 2026
EIS — institution booking & event management. I contributed QA and workflow improvements.
53,000+
sign-ups across 31 fairs in nine countries, Spring 2026
Registration platform & API. I contributed to it.
16,000+
door check-ins across participating fairs, Spring 2026
Badge-scanning system. I contributed to it.
81,000+
fair-matched scans, Spring 2026
Smart Scan app & API. I contributed to it.
140+
institution bookings for the Latin America fairs, Fall 2026 — as of Q4 2026
Regional example — EIS. I supported QA for it.
08 / education
2019 – 2023
City College of San Fernando Pampanga · San Fernando City, Philippines
Relevant coursework: Software and Web Development, User Experience Design, Project Management.
Selected project · 2019 – 2023
City College of San Fernando Pampanga
09 / transparency
QA is about evidence, so this portfolio holds itself to the same standard. Here is how to read the numbers and claims on this page.
Suite, test-case and commit counts describe what was written and committed. They are not execution results, pass rates, coverage figures or business impact. Commit attribution doesn’t prove exclusively handwritten authorship.
1 commit in the API repo, 5 in the QA repo and 11 in the eis repo (Q2 2026) explicitly credit Copilot as co-author. No delivered implementation from a task I delegated to a coding agent was verified (one assigned Copilot task from Q4 2025 closed unmerged), and the absence of an AI trailer doesn’t prove a commit was handwritten.
When I test someone else’s change (or an agent’s), I claim the testing — a QA pass is not authorship of the fix, and not release sign-off. No formal PR approvals or release sign-offs by me were verified.
The BMI Global Education repositories are private, so they aren’t linked and descriptions are sanitized. Details of open bugs are withheld. Platform figures describe the team’s product, not my individual outcomes.
10 / contact
Open to remote QA automation roles. The fastest way to reach me is email.