Operations Manager – HVAC

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

TYPE OF WORK

Full Time

SALARY

1000-1200

HOURS PER WEEK

40

DATE UPDATED

Sep 25, 2026

JOB OVERVIEW

Position: Operations Manager
Industry: HVAC / Home Services
Schedule: Full-Time
Starting Pay: $1,000/month
After Probation: $1,200/month
Additional Compensation: Commissions + Performance Bonuses

About the Role

We’re looking for a reliable, organized, and proactive Operations Manager to help manage the day-to-day operations of a growing HVAC company.

This is not a role where you’ll just sit behind the scenes doing admin work. You’ll be involved in sales calls, following up with leads, booking appointments, communicating with customers, coordinating the schedule, and making sure nothing falls through the cracks.

We need someone who is comfortable talking to customers, can think on their feet, stays organized, and takes ownership of their responsibilities.

If you’re someone who waits to be told what to do every step of the way, this probably isn’t the right position. We’re looking for someone who sees what needs to get done and handles it.

What You'll Be Doing
Answering and making sales calls
Following up with new and existing leads
Booking roofing estimates and appointments
Nurturing leads who aren't ready to book immediately
Following up on missed calls, texts, and inquiries
Managing customer communication
Keeping the sales pipeline and CRM organized
Confirming appointments and following up with customers
Coordinating schedules with the sales and production teams
Helping manage daily roofing company operations
Tracking leads, appointments, estimates, and sales
Making sure open tasks and customer issues are followed through
Communicating updates between team members
Helping improve systems and processes as the company grows
Handling general administrative and operational tasks as needed
What We're Looking For

We're looking for someone who is:

Confident speaking with customers over the phone
Comfortable with sales and follow-up
Organized and detail-oriented
Able to manage multiple tasks without constantly being reminded
Good at problem-solving
Reliable and consistent
Comfortable working in a fast-moving environment
Able to communicate clearly in English
Comfortable learning CRM, scheduling, and business software
Willing to take ownership instead of simply completing assigned tasks

Experience in roofing, construction, home services, appointment setting, sales, customer service, or operations is a major plus.

Compensation

The starting compensation for this position is $1,000 per month during the probationary period.

After successfully completing the probationary period, base compensation will increase to $1,200 per month.

On top of the base salary, there will also be opportunities to earn commissions and performance-based bonuses based on results.

We want someone who can grow with the company, so there is room for additional responsibility and earning potential as you prove yourself in the role.

What Success Looks Like

You'll do well in this position if:

Leads are being followed up with consistently
More appointments are getting booked
Customers receive quick responses
The schedule stays organized
The team knows what's happening with each lead or job
Tasks aren't getting forgotten
You're actively looking for ways to make the operation run better

We're looking for someone who can become a key part of the company — not just another person completing tasks.

How to Apply

Please send us:

A short video / audio introduction about yourself
Your previous experience with sales, customer service, operations, roofing, construction, or home services
Any experience you have making or receiving sales calls
The CRM or business software you've used before
Why you think you'd be a good fit for this position
Your availability and when you would be able to start

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0217
Total Execution Time  0.0231
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,503,776 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Operations-Manager-HVAC-1718141
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0162 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0008   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1718141
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 655653
 LIMIT 1 
0.0013   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1718141
AND `misc`.`id` IS NULL 
0.0005   SELECT e.business_name, e.logo, e.website, e.rebill_date, e.date_added member_date, hits, DATEDIFF('2026-09-27',ej.date_added) duration_days, DATEDIFF('2026-09-27',e.rebill_date) duration_rebill, ej.*, e.deactivate FROM employers e, employer_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-09-27',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1718141' 
0.0007   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1718141 
0.0007   UPDATE employer_jobs SET hit_counts = '***Aug-27-2026=679***Aug-28-2026=115***Aug-29-2026=32***Aug-30-2026=32***Aug-31-2026=38***Sep-01-2026=24***Sep-02-2026=17***Sep-03-2026=8***Sep-04-2026=9***Sep-05-2026=2***Sep-06-2026=3***Sep-07-2026=6***Sep-08-2026=6***Sep-09-2026=8***Sep-10-2026=6***Sep-11-2026=3***Sep-12-2026=1***Sep-14-2026=3***Sep-15-2026=2***Sep-16-2026=3***Sep-17-2026=3***Sep-18-2026=3***Sep-19-2026=3***Sep-20-2026=1***Sep-21-2026=205***Sep-22-2026=188***Sep-23-2026=91***Sep-24-2026=23***Sep-25-2026=636***Sep-26-2026=87***Sep-27-2026=2' WHERE job_id= '1718141'  
0.0006   UPDATE employer_jobs SET monthly_hits = '***Aug-2026=895***Sep-2026=1342' WHERE job_id= '1718141'  
0.0011   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1718141' AND status LIKE 'sent%' ORDER BY id DESC  
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1718141 
0.0091   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '655653'
AND `date_added` >= '2022-06-08' 
0.0003   select * from teasers 
0.0002   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)