QA Engineer – eCommerce (Shopify / WordPress)

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Any

SALARY

TBD

HOURS PER WEEK

TBD

DATE UPDATED

Aug 14, 2026

JOB OVERVIEW

ABOUT THE ROLE
You're the last checkpoint before anything reaches a client's live store. You'll test theme builds, custom apps, and integrations across platforms, and help mature our QA and deployment process.

WHAT YOU'LL DO
- Write and maintain test cases and QA checklists per project and per platform.
- Run functional, regression, cross-browser, and responsive testing on staging and preview themes.
- Test end-to-end purchase flows: cart, discounts, shipping rates, tax, payment gateways, order confirmation, email triggers.
- Validate custom app/plugin behavior, API integrations, and webhook reliability.
- Verify SEO basics, schema markup, redirects, and analytics/tracking (GA4, GTM, pixels) fire correctly.
- Check accessibility (WCAG 2.1 AA) and Core Web Vitals/page-speed regressions.
- Log clear, reproducible bugs with steps, environment, screenshots/screen recordings, and severity.
- Sign off on releases and run post-deploy smoke tests on production.
- Maintain QA documentation, SOPs, and action sheets.

REQUIRED
- 5+ years in QA, ideally on eCommerce or client-services web projects.
- Hands-on familiarity with Shopify and WordPress/WooCommerce admin panels.
- Strong bug-reporting discipline and attention to visual detail.
- Comfortable reading HTML/CSS and using browser DevTools.
- Experience with a bug tracker (Asana, Jira, or similar).
- Cross-browser and real-device testing (BrowserStack or equivalent).

NICE TO HAVE
- Automation experience (Cypress, Playwright, Selenium).
- Basic JavaScript, or API testing with Postman.
- Payment gateway sandbox testing.
- Understanding of Git and staging/production deployment flows.

HOW TO APPLY
To be considered, apply with:
1. Your resume/portfolio.
2. 2-3 examples of eCommerce projects you QA'd (platform, scope, your role).
3. One example of a tricky bug you caught before launch and how you found it.
4. Start your application with the word "CHECKPOINT" so we know you read the full post.

Applications without QA project examples will not be considered.

SKILL REQUIREMENT
VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0218
Total Execution Time  0.0231
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,504,768 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/QA-Engineer-eCommerce-Shopify-WordPress-1709044
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0160 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1709044
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 554212
 LIMIT 1 
0.0012   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1709044
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-17',ej.date_added) duration_daysDATEDIFF('2026-08-17',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-17',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1709044' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1709044 
0.0008   UPDATE employer_jobs SET hit_counts '***Aug-14-2026=581***Aug-15-2026=148***Aug-16-2026=2***Aug-17-2026=1' WHERE job_id'1709044'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Aug-2026=732' WHERE job_id'1709044'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1709044' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1709044 
0.0091   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '554212'
AND `date_added` >= '2022-06-08' 
0.0004   select from teasers 
0.0003   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)