PolarPath Journal

What Building for a Real HVAC Contractor Taught Us About Workflow Software Nobody Talks About

What Building for a Real HVAC Contractor Taught Us About Workflow Software Nobody Talks About

What Building for a Real HVAC Contractor Taught Us About Workflow Software Nobody Talks About

There's a lesson that doesn't show up in product roadmaps or SaaS founder podcasts: the gap between how a contractor describes their workflow and how it actually runs is enormous. And if you build to the description instead of the reality, you ship software that looks right in a demo and falls apart on a Tuesday morning when a tech calls in sick and three jobs need to be rescheduled before 8 a.m.

This is a build note from inside PolarPath's development. No inflated metrics, no invented customer stories. Just an honest account of a thing we got wrong, what we saw when we looked closer, and what it changed in how we think about building for field-service and project teams.


The Workflow That Looks Simple Until It Isn't

Early on, we sat down with an HVAC contractor running a mixed operation, reactive service calls plus a handful of planned mechanical projects running in parallel. On paper, their workflow was clean: customer calls in, dispatcher books a tech, tech goes out, job gets invoiced, money comes in.

When we asked them to walk us through a real week, the picture got complicated fast.

The service side and the project side were pulling from the same crew pool. A senior tech scheduled on a multi-day rooftop replacement could also be the only certified person who could handle a specific refrigerant type on emergency calls. When an emergency came in, the dispatcher had to call the project manager, who had to check a whiteboard, who had to call the tech directly to see if they could break away. That chain took 20 to 40 minutes of human back-and-forth on a good day.

Meanwhile, on the project side, change orders were being scoped verbally on-site, written on paper, and handed back to the office at the end of the day, sometimes two days later. Some got billed. Some didn't. Nobody had a clear picture of where project margin stood until the job was essentially over.

That wasn't a broken operation. That was a well-run one by industry standards. The sprawl was normal. It was load-bearing.


What We Got Wrong First

Our initial instinct was to build clean, separate modules: one for service dispatch, one for project management. We assumed contractors would want a clear line between the two, because that's how most software categories are drawn.

We were wrong.

The reason a module boundary made sense to us (software people) was precisely the reason it didn't work for them (field-service people). Their whole operational challenge is that service and projects are not separate. They share crews, share equipment, share margin pressure, and share the same customer relationship. Splitting them into separate tools, even well-designed separate tools, just recreated the handoff problem in software form instead of on sticky notes.

When a dispatcher in a siloed service tool books a tech for an afternoon call, they have no visibility into whether that tech is already committed to a project milestone. When a project manager tracks hours in a separate system, there's no connection back to what that labour actually costs relative to the quoted margin. The data exists in both places. It just doesn't talk.

That's the thing about disconnected tools that's easy to miss: the problem isn't that the tools are bad. It's that the handoff between them is a human being. And humans re-keying data between systems are slow, inconsistent, and invisible when they're buried in a busy operational week.


The Lesson: One Operational Truth, Not Two Connected Systems

What changed our thinking was a simple question one of the owners asked us: "Can my dispatcher see, in one place, every hour committed this week, whether it's a service call or a project shift?"

We couldn't answer yes. Not with separate modules.

So we rebuilt around the concept of a single operational record. A crew member exists once in the system. Their committed hours, whether from a service work order or a project task on a Gantt, draw from the same pool. A dispatcher scheduling a service call sees the same utilization picture as the project manager planning next week's on-site phase. There's no sync, no integration, no "check the other tool." One record, one picture.

The same principle applied to change orders. A change order scoped on-site doesn't live on paper or in a photo of a paper. It lives in the same job record as the original quote. When it gets approved, it's already connected to the invoice. Billing it isn't a separate step that someone has to remember, it's a natural output of the approval workflow.

A Simple Framework for Spotting Your Own Handoff Problems

You don't need to rebuild your software stack to apply this thinking. Here's a quick diagnostic any ops lead can run:

  1. List every place where information is re-entered by hand. A tech fills out a paper timesheet, someone keys it into QuickBooks. A PM emails a change order, someone copies it into an invoice. Each of those is a handoff, and a place where billable work can fall through.

  2. Follow a change order from the field to the invoice. Count the number of people it touches and the number of systems it passes through. If it's more than two systems, ask what happens when step three is delayed or missed.

  3. Ask your dispatcher what they can't see. Specifically: can they see project-committed hours when booking a service call? If the answer is no, you have a crew visibility gap that will eventually produce a double-booking or a missed milestone.

  4. Look at your last five invoices that were late. Trace each one back to the point where it got stuck. In most mixed-model operations, at least two of those five stalled because field data didn't make it back to the office cleanly, a timesheet held up, a signature missing, a change order not yet entered.

  5. Calculate your days-to-invoice. From the day a service call is completed or a project milestone is closed, how many calendar days until an invoice goes out? Every extra day is a cash flow drag. Every manual step is a day added.


What This Looks Like When the Handoffs Are Gone

When crew hours, work orders, project tasks, change orders, timesheets, and invoices all live in one operational record, a few things happen that are hard to appreciate until you've seen them:

Margin becomes visible while there's still time to act on it. If labour hours on a project are running 15% over estimate in week two of a four-week job, a project manager can see that and have a conversation with the customer before the job closes, not discover it during a post-mortem.

Invoicing stops being a separate department task. When field data flows directly into the billing record, invoicing a completed job becomes confirmation, not data entry. The information is already there.

Dispatch stops being a negotiation. When all committed hours are in one place, a dispatcher making a booking is working from a complete picture. The phone call to the project manager to check the whiteboard becomes unnecessary.

None of this is magic. It's just what happens when the middleware, the human beings re-keying data between disconnected tools, is replaced by a continuous workflow.


The Takeaway

If you run a shop that does both service and projects, your biggest operational risk isn't bad software. It's the gap between your tools and the human effort required to bridge it. That effort is invisible on a good day and catastrophic on a bad one.

Start by mapping where data gets re-entered, where a person acts as the connection between two systems, and where an approval or a sign-off is the thing standing between a completed job and a sent invoice. That map will show you exactly where your cash and your crew utilization are leaking.

That diagnostic is what shaped how PolarPath was built, not as a suite of connected modules, but as a single operational execution layer where service and projects share one record from the first customer call through the last dollar collected. If that picture sounds like your shop and you want to see how it runs in practice, a walkthrough is the right next step: polarpath.ca.