How we think · how we build
Construction runs on judgment. We build software that earns it.
Build Flows exists to close the gap between the data construction companies already own and the decisions they make every day—with systems that are traceable, governed, and still running long after go-live.
Mission
Turn every construction system into a trusted source of action—for people and for AI.
Vision
A built world where no one retypes a number, every forecast shows its evidence, and expert teams spend their time on judgment—not data entry.
Philosophy
What we believe
The data is already there.
Every contractor we meet has Procore, an ERP, a scheduler, and a dozen spreadsheets. The problem is never a lack of data—it's the distance between where data lives and where decisions get made. We close that distance.
Trust is the product.
A dashboard nobody believes is worse than no dashboard. An agent nobody can audit never leaves the pilot. We design for trust first: traceable numbers, cited sources, visible gaps, and people approving what matters.
Software should outlive the engagement.
We build systems your team can read, run, and extend after we leave—in your tenant, under your credentials, in version control. No black boxes, no hostage code.
AI is leverage, not magic.
We use AI agents aggressively—to build, test, and operate—but always inside guardrails. Narrow agents with clear jobs, measurable quality, and a human in the loop beat one clever prompt every time.
Design principles
Rules we don't break
Learned in production, written down so every build inherits them. You'll see each one in our articles.
01
Blank, never zero
Missing data shows as missing. A gap must never pass for a good result—in a report, a scorecard, or an agent's answer.
02
Flag, never drop
Rows that fail validation go to a rejects table with a reason. Unmatched records land on a worklist naming the system to fix them in.
03
A stale answer beats a wrong one
Quality gates run before anything publishes. If the checks fail, yesterday's correct numbers stay in place and the failure is visible.
04
Evidence on every output
Agents cite the file and passage they used. Metrics show their arithmetic. Every draft is versioned. If you can't trace it, you can't trust it.
05
Fix it at the source
We don't paper over bad data downstream. We surface it so it gets corrected in Procore, the ERP, or the scheduler—where it belongs.
06
Routing over dumping
Thousands of API operations become a governed, discoverable tool surface—not an unfiltered list that drowns the model and scares IT.
07
Least privilege by default
Read-first access, server-side credentials, scoped writes, and telemetry on every call. Governance lives at the tool boundary, not in a policy PDF.
08
Built as code
Pipelines, models, reports, quality rules, and infrastructure deploy from version control by script—reviewable, repeatable, reversible.
09
Boring where it counts
Proven patterns for the plumbing—medallion lakehouses, star schemas, typed APIs—so the novelty goes where it creates value.
Languages & stack
What we build with
Polyglot by necessity: the right language for each layer, from lakehouse to agent to the page your client opens. Read the code.
Languages
- TypeScriptMCP servers, n8n nodes, web apps, APIs
- PythonData pipelines, agents, MCP servers, OCR
- SQL / T-SQLWarehouse models, quality rules, reconciliation
- PySparkFabric notebooks, bronze → silver → gold
- DAX & Power Query (M)Semantic models and ~180-measure reports
- HTML / CSS / JavaScriptClient deliverables and embedded apps
AI & agents
- Model Context ProtocolGoverned tool surfaces for any agent
- Claude & multi-modelAgents, coding, testing, and review
- Vector search & embeddingsFile intelligence with citations
- Rubrics & golden setsMeasured agent quality, not vibes
Data & cloud
- Microsoft FabricLakehouse, notebooks, Direct Lake
- Power BIExecutive and operational reporting
- AzureKey Vault, Functions, Cosmos DB, hosting
- Next.js & VercelFront ends and portals—this site included
Construction platforms
- Procore2,755 API operations routed over MCP
- Oracle Primavera P6585 operations + offline XER analysis
- Sage & QuickBooksAccounting, job cost, and AR/AP
- Autodesk, HCSS, Outbuild, SalesforceDesign, field, scheduling, CRM
Method
How an engagement runs
1
Outcome first
We start from the decision you need to make or the hours you need back—not from a tool or a feature list.
2
Map the truth
Inventory every source, every manual spreadsheet, every crosswalk. Usually 30–40% of what teams report lives in no system at all.
3
Ship thin, then widen
Get one end-to-end path live in your environment fast, then expand. Real data exposes real problems weeks earlier than a slide deck.
4
Gate, test, observe
Quality rules, automated tests (including AI-driven browser tests), telemetry, and alerts ship with the first version—not after an incident.
5
Hand off clean
Docs, runbooks, and code in your repos. Your team runs it—or we keep running it. Both are first-class outcomes.
Goals
Where we're going
Now
Kill the monthly spreadsheet
Every contractor we work with gets reporting that builds itself overnight, ties to source, and tells them what to fix.
Next
Agents for every expert workflow
Scheduling, estimating, project controls, closeout—specialized agents that draft, cite, and wait for sign-off, governed from one admin portal.
Ahead
An open construction tool layer
Every major construction platform reachable through governed, open MCP servers—so any AI agent can work with project data safely.
Building something like this?
Tell us the outcome. We'll tell you honestly whether we're the right team—and reply within two business days.