Notes on the work around the work.
How we build and test the systems behind business websites, inquiries, customer records, and day-to-day administration.
A Missed Call Shouldn't Mean a Missed Job
A missed call or a forgotten follow-up loses a job the same way every time — not because the customer didn't want the work, but because nobody wrote it down. A checklist a five-person business can run this week, and what happens to an inquiry logged with OAS today.
Why Website Edits Should Wait for Publish
Saving photos or carousel settings updates a draft, not the live site. Here is who can edit, who publishes, and how to request publication.
Eliminating an N+1 database query in a multi-tenant system
How a read-only OAS website-status reader went from 21 SQL statements to 2 in a synthetic ten-site fixture, without a cache or a new service—and what that measurement does not prove.
Own the Customer Relationship. Rent the Infrastructure.
OAS builds the parts that are specific to running a contracting business and rents the generic parts underneath. Here is where that line actually sits, and why it is drawn there on purpose.
We stopped treating AI agent instructions as enough
AI coding agents write much of OAS. Written guidance defines the rules; risk-appropriate automated checks test specific boundaries. Here is how they fit together, and what they cannot prove.
From a team observation to a reviewed software change
How a small piece of friction noticed inside the OAS console became a scoped, reviewed change, and why the loop is not closed until someone checks the result on the live system.
What Happens After Someone Requests an Estimate?
A visitor submits an estimate request on a contractor's website. Here is the exact sequence that runs on a live contractor site, and what has not been built yet.
Why a customer record should outlive its website
A contractor can replace a website without replacing the relationships built through it. Here is how OAS keeps customers, leads and their history separate from the channel they arrived through.
One runtime, multiple businesses: building tenant isolation into OAS
Every contractor website OAS hosts runs on the same application. Here is how the server matches a request's hostname to a configured website and its business, and why a business identifier added to a submitted form does not override that match.
Why every OAS service starts with a written scope
Before OAS builds anything, the work is written down — what is included, what is not, and what it costs. Here is why that step comes first.