Estimator — Architectural Millwork & Metal Fabrication

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

TYPE OF WORK

Full Time

SALARY

$4.00 per hour

HOURS PER WEEK

40

DATE UPDATED

Jul 27, 2026

JOB OVERVIEW

Job Title: Millwork Estimator — Architectural Woodwork, Metal & Stone

About Us
Visual Millwork, Inc. is a custom architectural millwork, metalwork, and stonework manufacturer serving hospitality, healthcare, retail, and corporate interiors globally. We handle the full scope in-house from design through installation. We're looking for an estimator who can read a set, find every item that belongs to us, and quantify it accurately.

What You'll Do

Review architectural drawing sets, specifications, and finish schedules to identify all millwork, metalwork, and stone scope
Perform detailed quantity takeoffs for casework, paneling, countertops, custom fixtures, architectural metal, and stone
Build line-item estimates covering material, labor, finishing, hardware, delivery, and installation
Solicit and evaluate vendor and subcontractor pricing for materials, hardware, stone, and specialty items
Identify scope gaps, drawing conflicts, and missing details, and prepare RFIs
Write clear inclusions, exclusions, and qualifications so our proposals accurately reflect what we're pricing
Track bid due dates and manage multiple active estimates simultaneously
Coordinate with project management and engineering on constructability and pricing assumptions
Support buyout and handoff to the project team on awarded work

Required Skills

Ability to read and interpret architectural drawing sets, details, elevations, and specification sections
Solid takeoff skills — you can look at a set and know what's ours, what's by others, and what's unclear
Working knowledge of millwork materials and construction: plastic laminate, wood veneer, solid surface, stone, and architectural metals
Understanding of how materials are actually fabricated and what drives cost
Strong Excel skills and comfort building and maintaining estimate spreadsheets
Detail orientation and accuracy — a missed item or a wrong quantity comes directly out of margin
Clear written communication for qualifications, RFIs, and proposal language

Strongly Preferred

Prior estimating experience in custom millwork, casework, or architectural fixtures
Familiarity with AWI (Architectural Woodwork Institute) standards and grade requirements
Experience with digital takeoff software (Bluebeam Revu, PlanSwift, On-Screen Takeoff, or similar)
Experience with millwork-specific estimating software (Cabinet Vision, Microvellum, or similar)
Familiarity with commercial construction bid processes and GC prequalification requirements
Existing relationships with material suppliers and stone or metal fabricators
AutoCAD proficiency for reference and markup

To Apply
Send your resume along with a brief note describing the types and sizes of projects you've estimated. If you've worked with specific takeoff or estimating software, please list it.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0127
Total Execution Time  0.0141
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,499,440 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Estimator-Architectural-Millwork-Metal-Fabrication-1697180
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0074 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1697180
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 958424
 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` = 1697180
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-11',ej.date_added) duration_daysDATEDIFF('2026-08-11',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-11',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1697180' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1697180 
0.0014   UPDATE employer_jobs SET hit_counts '***Jul-27-2026=359***Jul-28-2026=175***Jul-29-2026=90***Jul-30-2026=39***Jul-31-2026=25***Aug-01-2026=15***Aug-02-2026=22***Aug-03-2026=15***Aug-04-2026=19***Aug-05-2026=15***Aug-06-2026=5***Aug-07-2026=10***Aug-08-2026=4***Aug-11-2026=1' WHERE job_id'1697180'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jul-2026=688***Aug-2026=106' WHERE job_id'1697180'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1697180' 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` = 1697180 
0.0008   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '958424'
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)