Sales Operations Coordinator — Proposal & Estimating Assistant (Construction)

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

TYPE OF WORK

Full Time

WAGE / SALARY

$6-$8/hr USD depending on Experience

HOURS PER WEEK

40

DATE UPDATED

Apr 14, 2026

JOB OVERVIEW

We are a top-producing painting and stucco sales operation in Arizona
generating $3M+ annually. We are building a lean sales machine and need
a dedicated, long-term coordinator to run the back end while our manager
stays in the field closing deals.

YOUR DAILY TASKS:
- Transcribe voice memos from job site visits into structured scope outlines
- Draft proposal descriptions, scope of work, and excludes lists using AI tools
- Enter job data into a CRM (job info, site address, client details, photos)
- Maintain our Google Sheets pipeline tracker — update statuses daily
- Draft and queue Day 2 / Day 5 / Day 10 follow-up emails for manager review
- Confirm appointments and help batch site visits geographically
- Research properties using Maricopa County Assessor public records
- Send manager a daily end-of-day status update

YOU DO NOT: set pricing, call clients directly, or send anything without review.

REQUIREMENTS:
- College graduate (engineering or construction background preferred)
- Excellent written English — proposals must read as professional and native
- Available Arizona time (MST) — 8am to 5pm
- Proficient in Google Workspace and comfortable using ChatGPT or Claude AI
- Seeking one dedicated long-term employer — not multiple clients
- Fast stable internet (20+ Mbps)

TO APPLY — YOU MUST COMPLETE THIS TEST TASK:
Here are notes from a site visit: "2-story commercial exterior. Full repaint.
Heavy stucco cracking south and west sides of building — 60 LF medium crack repair.
Iron entry gate and 3 railings — full prep, prime, repaint black. Power wash
everything. 2 coats exterior paint, body and trim separate colors.
Light poles, Trash enclosure, Doors, Door frames, Window mullions are excluded."

Provide: 1) A scope of work outline ready to paste into a proposal.
2) A standard excludes list. 3) A short professional proposal email.
Return within 24 hours. Applications without the test task will not be reviewed.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0475
Total Execution Time  0.0488
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,498,720 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Sales-Operations-Coordinator-Proposal-Estimating-Assistant-Construction-1623408
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0422 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1623408
 LIMIT 1 
0.0004   SELECT *
FROM `employers`
WHERE `employer_id` = 921164
 LIMIT 1 
0.0364   SELECT COUNT(DISTINCT t.id) as cnt
FROM 
`t_thread` `t`
INNER JOIN `t_message` `mON `t`.`id` = `m`.`thread_id`
INNER JOIN `t_message_employer` `eON `m`.`id` = `e`.`message_id`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1623408
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-23',ej.date_added) duration_daysDATEDIFF('2026-06-23',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-06-23',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1623408' 
0.0008   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1623408 
0.0007   UPDATE employer_jobs SET hit_counts '***Apr-14-2026=604***Apr-15-2026=62***Apr-16-2026=30***Apr-17-2026=17***Apr-18-2026=22***Apr-19-2026=9***Apr-20-2026=17***Apr-21-2026=13***Apr-22-2026=11***Apr-23-2026=10***Apr-24-2026=6***Apr-25-2026=5***Apr-26-2026=10***Apr-27-2026=7***Apr-28-2026=4***Apr-29-2026=13***Apr-30-2026=6***May-01-2026=2***May-02-2026=3***May-03-2026=1***May-04-2026=4***May-05-2026=10***May-06-2026=7***May-07-2026=1***May-08-2026=3***May-10-2026=1***May-11-2026=5***May-12-2026=2***May-13-2026=4***May-14-2026=3***May-15-2026=2***May-16-2026=2***May-17-2026=2***May-18-2026=4***May-19-2026=5***May-20-2026=6***May-21-2026=8***May-22-2026=3***May-23-2026=2***May-24-2026=9***May-25-2026=2***May-26-2026=11***May-27-2026=3***May-28-2026=2***May-29-2026=2***May-30-2026=3***Jun-01-2026=9***Jun-02-2026=6***Jun-03-2026=1***Jun-04-2026=1***Jun-05-2026=6***Jun-06-2026=1***Jun-07-2026=1***Jun-09-2026=2***Jun-10-2026=6***Jun-11-2026=2***Jun-12-2026=1***Jun-14-2026=2***Jun-16-2026=1***Jun-18-2026=2***Jun-19-2026=2***Jun-23-2026=1' WHERE job_id'1623408'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Apr-2026=846***May-2026=112***Jun-2026=44' WHERE job_id'1623408'  
0.0012   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1623408' 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` = 1623408 
0.0003   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '921164'
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)