Shopify Ecommerce Project Manager (Operations) – Manage VA + Dev + Media Buyer (Permanent Role)

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

TYPE OF WORK

Any

SALARY

$10-15 (depends on skill level)

HOURS PER WEEK

40

DATE UPDATED

Feb 24, 2026

JOB OVERVIEW

Summary
Our company is building a new Shopify ecommerce channel alongside our core store fixutres business. We already have two reliable local suppliers with stock ready to be dropshipped, with an initial catalog of ~1600 SKUs. Our goal is to launch fast with clean execution, then scale paid search.

WHAT WE NEED
We need an operator who can run the launch end-to-end and protect the founder’s time.

This is a full-time role, but if you’re a strong candidate with part-time availability, apply anyway. This is a long-term position—we plan to grow the store to 10,000 SKUs over time.

THIS ROLE IS NOT FOR

* A performance marketer / media buyer (you will coordinate a specialist)
* A developer (you will coordinate a developer and QA the output)
* A general VA who only follows instructions (this role owns outcomes and deliverables)
* Someone who needs daily hand-holding or can’t show proof of similar work (SOPs, dashboards, launch plans, completed projects)

PROJECT SCOPE (WHAT YOU WILL MANAGE)

* Build and launch a Shopify store for ~1600 SKUs
* Manage VA(s) to upload products and enforce a QA checklist
* Coordinate competitor pricing inputs and keep pricing organized (rules + review)
* Set up and integrate automatic shipping costs based on package sizes/weights and carrier/rate apps that return the best available shipping rates
* Coordinate Google Ads launch with a media buyer (Search/Shopping)
* Coordinate with a developer to build supplier integrations (API) for live stock and order routing, including clear acceptance criteria and testing
* Coordinate perfect tracking setup (GA4/GTM/Ads conversions) with the media buyer/developer and verify with evidence
* Ensure the finished output works (testing + evidence), not just “it should work”

MUST-HAVE CAPABILITIES

* Strong project management: timelines, owners, follow-ups, and deadlines
* Ecommerce operations literacy: products, variants, collections, feeds, shipping rules
* Comfortable handling a large catalog (we’re launching ~1600 SKUs)
* Able to write clear specs/tickets for a developer and validate outputs with a test plan
* Can coordinate supplier API work (requirements, edge cases, acceptance criteria, UAT)
* Can coordinate and verify tracking (GA4/GTM/Google Ads) using evidence (test order, debug tools, screenshots)
* Can set up and maintain shipping rate logic (package sizes/weights, shipping profiles, carrier/rate apps, spot-checks)
* Comfortable communicating with suppliers and pushing for what you need
* Strong documentation: SOPs, checklists, and simple dashboards
* Calm execution: you don’t create chaos, you reduce it

TOOLS (PREFERRED)
Shopify, Google Sheets, Notion/ClickUp/Asana, Slack, Loom. Bonus if you’ve worked with Google Merchant Center and product feeds.

TIME ZONE
Must overlap at least 2 hours/day with 10 AM–5 PM Eastern Time (Toronto/New York).

PAY
Based on proof of ability. Include your expected hourly rate in your application.

WHAT SUCCESS LOOKS LIKE

* We launch in 4–8 weeks once the website is live, with a clean catalog and stable operations
* Product uploads are consistent, accurate, and traceable (no guessing)
* Supplier inventory updates are reliable (stock accuracy + clear OOS behavior)
* Ads buyer gets what they need: clean feed, clean landing pages, clean tracking evidence
* Founder receives short weekly updates and only gets pulled in for key decisions

2-WEEK PAID TRIAL (HOW WE HIRE)
We will start with a 2-week paid trial. If you perform, this becomes long-term.

WHEN APPLYING
1. Start your message with: ECOM OPS
2. Confirm in one line:
* Your hourly rate
* How many hours are you available weekly
* You can overlap 2 hours/day with Eastern Time
3. Submit links to the qualifying questions when applying:
* List the URL of the best ecommerce projects you supported, and describe your responsibilities in that project.
* Record a short video of yourself, decribing your experience and why you're the right person for this role.

Do not send follow-ups. If you’re a fit, we will reply.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0010
Controller Execution Time ( Jobseekers / Job )  0.0174
Total Execution Time  0.0191
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,517,800 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Shopify-Ecommerce-Project-Manager-Operations-Manage-VA-Dev-Media-Buyer-Permanent-Role-1587566
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0086 seconds)  (Hide)
0.0010   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0005   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1587566
 LIMIT 1 
0.0005   SELECT *
FROM `employers`
WHERE `employer_id` = 696826
 LIMIT 1 
0.0010   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1587566
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-21',ej.date_added) duration_daysDATEDIFF('2026-04-21',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-04-21',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1587566' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1587566 
0.0009   UPDATE employer_jobs SET hit_counts '***Feb-24-2026=23***Feb-25-2026=198***Feb-26-2026=55***Feb-27-2026=27***Feb-28-2026=18***Mar-01-2026=8***Mar-02-2026=29***Mar-03-2026=16***Mar-04-2026=14***Mar-05-2026=11***Mar-06-2026=12***Mar-07-2026=6***Mar-08-2026=4***Mar-09-2026=7***Mar-10-2026=9***Mar-11-2026=9***Mar-12-2026=7***Mar-13-2026=11***Mar-14-2026=3***Mar-15-2026=8***Mar-16-2026=10***Mar-17-2026=8***Mar-18-2026=6***Mar-19-2026=11***Mar-20-2026=9***Mar-21-2026=3***Mar-22-2026=11***Mar-23-2026=13***Mar-24-2026=7***Mar-25-2026=9***Mar-26-2026=13***Mar-27-2026=11***Mar-28-2026=3***Mar-30-2026=4***Mar-31-2026=6***Apr-01-2026=8***Apr-02-2026=9***Apr-03-2026=17***Apr-04-2026=3***Apr-05-2026=2***Apr-06-2026=7***Apr-07-2026=3***Apr-08-2026=5***Apr-09-2026=5***Apr-10-2026=3***Apr-11-2026=3***Apr-13-2026=4***Apr-14-2026=4***Apr-15-2026=5***Apr-16-2026=10***Apr-17-2026=3***Apr-21-2026=1' WHERE job_id'1587566'  
0.0007   UPDATE employer_jobs SET monthly_hits '***Feb-2026=321***Mar-2026=277***Apr-2026=92' WHERE job_id'1587566'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1587566' AND status LIKE 'sent%' ORDER BY id DESC  
0.0004   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1587566 
0.0014   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '696826'
AND `date_added` >= '2022-06-08' 
0.0004   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)