Operations Manager - US Cleaning Company (Cleaning Industry Experience Required, Lead a Remote Team)

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

TYPE OF WORK

Any

SALARY

1400/mo

HOURS PER WEEK

40

DATE UPDATED

Jul 26, 2026

JOB OVERVIEW

READ THIS FIRST: You must have run operations for a US residential cleaning or maid service company. This is not a general remote operations role and we will not train you on the industry.

ABOUT THE JOB
We run residential cleaning across more than 50 US cities on our own custom software. A small remote team handles scheduling, customer messages, and cleaner coordination all day. We need one person to own the whole floor so the owner stops being the escalation point.

WHAT YOU WILL DO EVERY DAY
- Own the daily exception queue: unassigned jobs, cleaner no shows, at risk customers, failed payments, and anything the system flags as needing attention
- Run the morning start and the end of shift handoff so nothing falls between shifts
- Hold the team to response time standards, and coach the people who slip
- Be the single escalation point. Only what genuinely needs the owner reaches the owner.
- Spot problems that keep repeating and write the fix into our process docs
- Report daily on what broke, what got fixed, and what is still open

HOW WE MEASURE YOU
- Exception queue cleared to zero every day
- Team response time compliance
- Escalations to the owner going down month over month

REQUIREMENTS
- 3 or more years in operations, dispatch, or team management at a US residential cleaning or maid service company
- You have run daily scheduling and cleaner assignment at real volume, and you know how a cleaning day actually falls apart
- You have used cleaning company software such as BookingKoala, Launch27, Jobber, ZenMaid, or Housecall Pro. Tell us which one and be ready to talk about it in detail.
- Excellent written English. You will write the process docs your team follows.
- Decisive. You make routine calls without asking permission.
- Reliable computer, backup internet, and a quiet place to take calls

SCHEDULE
Full time, 40 hours per week, US Eastern Time, with availability for genuine emergencies outside those hours.
PAY
$1,300 to $2,000 USD per month based on experience. Paid twice monthly through Wise or Payoneer.

HOW TO APPLY
Do all four of these. Applications missing any of the four will not be read.
1. Use this exact subject line: I own the floor - [your name]
2. Name the cleaning company, your role, how many cleaners and how many jobs per day you were responsible for, and which software you used.
3. Tell me about one recurring problem in cleaning operations that you fixed permanently, and what the fix was.
4. Record a 2 minute voice message. A free Vocaroo link is fine. Explain how you would handle this: it is 8am, a cleaner has not shown up for a 9am job, the customer already paid, and two of your tea ---------- mbers are messaging you at the same time.
We reply to every complete application within 3 business days.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0320
Total Execution Time  0.0334
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,508,120 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Operations-Manager-US-Cleaning-Company-Cleaning-Industry-Experience-Required-Lead-a-Remote-Team-1696731
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0267 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1696731
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 391720
 LIMIT 1 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1696731
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-10',ej.date_added) duration_daysDATEDIFF('2026-08-10',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-10',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1696731' 
0.0007   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1696731 
0.0008   UPDATE employer_jobs SET hit_counts '***Jul-26-2026=639***Jul-27-2026=233***Jul-28-2026=72***Jul-29-2026=61***Jul-30-2026=45***Jul-31-2026=28***Aug-01-2026=15***Aug-02-2026=10***Aug-03-2026=25***Aug-04-2026=20***Aug-05-2026=26***Aug-06-2026=16***Aug-07-2026=11***Aug-08-2026=5***Aug-10-2026=1' WHERE job_id'1696731'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jul-2026=1077***Aug-2026=129' WHERE job_id'1696731'  
0.0012   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1696731' 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` = 1696731 
0.0202   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '391720'
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)