Practice / one person · est. 2026

Turning operational friction into automated leverage.

I help small teams identify repetitive work, design practical workflow assistants, and build the small tools that take recurring tasks off their plate. Eighteen years of software engineering, applied to whatever your business actually does.

What it is
A diagnostic, then a build. Small AI assistants scoped to one recurring task.
What it isn’t
Not strategy decks. Not retainers. Not anything I haven’t watched run.
ASSISTANT // 03 — RFP INTAKE Shipped · live
Inbound RFPemail · n = 1,284[a]Classifier7 patterns · 92%[b]Auto-reply[c]Auto-forwardAM inbox8% fallthrough~ 6 sec / item
Before
14 hrs / wk
After
2 hrs / wk
Missed leads
0 / 30 d
Marginalia
[a] intake
Same email gateway. No new addresses, no new tools for the AM.
[b] classifier
Seven patterns covered 92% of rejects. The eighth was always a person.
[c] guardrails
Every auto-reply reviewed by an AM for 30 days. Two threshold tweaks; no rebuild.
[d] not built
A “smart inbox” replacement. The point was to take work off, not move it.
RFP triage · system as built2026·04·11
Recent workMost recent first
Logistics broker2026·04·11
RFP triage assistant
Built in 6 weeks
14 → 2 hrs/wkRead →
Specialty grocer2026·03·02
Inventory reconciliation overnight pass
Built in 4 weeks
4.5 → 0.6 hrs/dayRead →
Residential GC2026·02·14
Estimate intake router
Built in 5 weeks
38 → 11 min/leadRead →
Three-stage engagement — Diagnostic → Build → FollowupTypical 6–10 wk · weekly note

How I work.

Every engagement runs the same three stages. Diagnostic comes first. The build only starts after I can describe your work back to you, and only when it’s clear which recurring task is worth automating.

DIAGNOSTIC2 wk · drawing the workBUILD4–6 wk · scoped to one taskFOLLOWUP30 + 90 day audit
Diagnostic
2 weeks · fixed fee

Two weeks of watching the work and drawing the system as it actually runs. Output: an annotated diagram of the current process, a short list of frictions worth automating, and an honest read on which ones I think are worth building. Not a proposal.

Build
4–6 weeks · scoped fee

A small AI assistant scoped to one recurring task. Shipped end-to-end. Measured against the time-saved number from the diagnostic. Code stays yours; I leave you the runbook.

Followup
30 + 90 day · included

Thirty- and ninety-day audits. Adjust thresholds, retire what isn’t useful, write down what I learned. If the build doesn’t hold up, I want to know first.

What I don’t do
  • — Strategy decks
  • — “AI transformation” engagements
  • — Multi-quarter retainers
  • — Anything I haven’t watched run
What stays with you
Code, diagrams, runbook, and the diagnostic sheet. Always yours.
Case study — RFP triage for a regional logistics broker

Account managers were spending fourteen hours a week triaging inbound RFP emails.

I shadowed three account managers for a week and watched the inbox up close. Most RFPs were either out of region, missing dates, or duplicated from a job already won — patterns that an experienced manager can read in two seconds but that still cost the time to read.

RFP triage — system view
Compare
Inbound RFPemail[a]Classifier7 patterns[b]Auto-replyreject template[c]Auto-forwardregion routingAM inbox8% fallthrough~ 2 hrs / wk in this column[a] same inbound stream[b] threshold tunable, retrains nightly[c] reviewed for first 30 days~ 6 sec / RFP
System as builtShipped Apr 11, 2026
Before
14hrs / wk
per AM, n = 3
After
2hrs / wk
per AM, 30-day audit
Missed leads
0in first 30 days
vs. 6% pre-build estimate

Built a small classifier that handles seven recurring patterns and routes anything outside them back to a manager with the matched-pattern reasoning attached. Reviewed every borderline call for the first thirty days. Adjusted thresholds twice.

Read the full write-up (PDF)·Source — github
— Built & signed off, 2026·04·11RFP TRIAGE · LOGISTICS
Case study — Inventory reconciliation, overnight pass

Three POS feeds disagreed by a few hundred units every morning. Nobody had time to chase it.

I sat with the operations lead through two close-out cycles. The discrepancies weren’t random — twelve recurring categories explained most of them. The root cause turned out to be a vendor SKU map that nobody owned.

POS · frontstore ledgerPOS · cateringbatch feed, nightlyPOS · wholesalecsv drop, daily 02:00[a][c]Overnight reconcilerSKU map · rulesetSingle ledgersource of truthSlack #opsdiscrepancies, daily 06:00Human review12 flagged categories[a] feeds reconciled at SKU-map level, not raw rows[b] flag-and-route — never auto-correct accounting
Before
4.5hrs / day
ops lead, manual reconciling
After
0.6hrs / day
only flagged categories
Root cause
1SKU map
not a tooling problem

Built an overnight reconciler that posts a short discrepancy report to Slack at six. It flags — it doesn’t auto-correct accounting. The bigger win was fixing the SKU map; the assistant just made the fix discoverable.

— Built & signed off, 2026·03·02INVENTORY RECONCILER · GROCERY
Case study — Estimate intake router for a residential GC

Three channels of estimate requests, no single queue, no read on which to chase first.

I read eighteen months of won jobs against the leads that produced them. Roughly four variables — service type, zip cluster, source channel, season — explained most of the closeable ones. The owner’s gut had been right about three of the four; the fourth was a real find.

Web formInbound emailReferral call logNormalize + score18-mo history · win rateQueue · scoredhuman always sees all[a] three intake channels, one queue[b] scored, not filtered — the queue stays human-readable
Before
38min / lead
read, score, route by hand
After
11min / lead
owner reads scored queue
Close rate
+9points
at 90 days, vs. prior quarter

Built a scored queue, not a filter. The human always sees every lead — the score just changes the order. The scoring model is one page of code and an audit trail. Easy to question, easy to retrain.

— Built & signed off, 2026·02·14ESTIMATE ROUTER · RESIDENTIAL GC
Working notes4 entries · updated weekly

Short notes from the workshop.

Things I’m working out. Not essays, not thought leadership. Closer to the right margin of a page I’m in the middle of writing.

  • 2026·05·02
    Why I write the diagnostic before I quote the build
    A quote written before I have watched the work is just a guess in a suit.
    Read →
  • 2026·04·19
    Seven patterns that cover most email triage
    A recurring shape: a long tail of categories disguising a very short head.
    Read →
  • 2026·04·03
    On not building a "smart inbox"
    A new tool that you have to remember to open is not a tool, it is another inbox.
    Read →
  • 2026·03·12
    How I draw the system-as-found
    On paper first. Then a one-page svg. The drawing is the deliverable.
    Read →
RSS: /feed.xml · no newsletter
Contact

One email. I read everything that comes in.

Send a paragraph about what your team does and what’s chewing up time. I’ll write back with whether I think it’s worth a diagnostic and what mine would cost.

caleb@leverageworkshop.com
RESPONSE ≤ 24 HRS
HOURS · M–TH · US EAST