PeopleOS as an assisted operating model
Every step below runs from week one on a thin data spine + AI concierge + the tools Equals Five already owns. Software is bought when a volume trigger fires, and built only when a gate proves the join is used. Dates are real; each gate names its owner, entry criteria, exit criteria and the choice being made.
0 · The frame — three tracks, five gates
Track 1 — Operate (from W1): run the full PeopleOS process assisted — humans + AI concierge on an Airtable spine. Track 2 — Buy (from W6): adopt commodity tools only when measured volume fires a trigger. Track 3 — Build (from W13): Tim builds only the joins the assisted quarter proved. Gates G0–G4 sit between the tracks; nothing crosses without passing its gate.
1 · Solution map — who owns what
James / Leadership
- G0 scope decision: internal vs KubiqAI product
- Approves Core/Flex/Network categorisations
- Stage-2 interviews + Meeting-3 onboarding
- Monthly metrics review · gate sign-offs
Anthony · solution design
- Owns the operating model + this map
- Field-cut workshop · spine schema (W1)
- Defines gates, tolerances, prompts
- Gates Tim's estimates & backlog (G4)
- Weekly ops review chair (Fri)
AI concierge
- ScoreApp export → assessment draft (24h)
- NL talent search over spine + CV corpus
- Interview question packs from gaps
- Huddle voice-memo → summary → spine
- Invoice ↔ LoE ↔ time three-way check
- Never decides — drafts + flags only
Recruitment lead (Josh)
- Vacancy briefs · publishes JD
- Human review gate on every AI assessment
- Stage-1 interviews · onboarding meetings 1–2
- Spine data owner — completeness ≥95%
Tim (Tiaan) · architect
- W1 guardrails call — architecture principles
- Observes assisted quarter · logs build candidates
- G4: receives proven backlog, estimates against it
- Builds the join (Nov+) — not the platform
Finance
- Weekly approved-time ledger
- Month-end reconciliation (AI-checked)
- Owns exceptions — every one named + resolved
- Period lock after resolution
2 · Timeline & gates — dated, w/c anchors
| Week | Dates 2026 | Activities | Gate / review |
|---|---|---|---|
| W0 | Wed 29–Fri 31 Jul | Reply to James accepting the design+oversight role · book the G0 call · circulate this map + the 3 Jun page | — |
| W1 | Mon 3–Fri 7 Aug | G0 call with James (Mon/Tue). Field-cut workshop: 27-section brief → the 30 person-record fields that matter · Airtable spine schema built · Tim guardrails call (Thu) · volumes captured: candidates/yr, live principals, invoices/mo | G0 · scope decision Fri 7 Aug: spine schema signed |
| W2 | Mon 10–Fri 14 Aug | Data population sprint (assisted): every live principal + trailing-12-month candidates into the spine · dedupe pass · commercial fields restricted-access set up | G1 · spine live Fri 14 Aug |
| W3–W6 | Mon 17 Aug–Fri 11 Sep | Assisted operations begin: Workflow A on one live vacancy · Workflow B huddle rhythm starts (all Core principals scheduled) · first month-end reconciliation Mon 31 Aug (Workflow C) · metrics ledger runs from day one | G2 · first cycle proven Fri 11 Sep |
| W7–W8 | Mon 14–Fri 25 Sep | Volume evidence in → tool pilots only where a trigger fired (§7) · pilots monthly-cancellable · no annual contracts | G3 · buy decisions Fri 25 Sep |
| W9–W12 | Mon 28 Sep–Fri 23 Oct | Second measured month · build-candidate log matures (every manual join Tim or Anthony touches twice gets logged) · second month-end reconciliation Wed 30 Sep | Weekly ops reviews |
| W13 | Mon 26–Fri 30 Oct | Quarter review with James. Backlog scored: used-weekly joins qualify · Tim estimates against the proven backlog only · pre-mortem each item | G4 · build gate w/c 26 Oct |
| W14+ | Mon 2 Nov → | Tim builds the join (thin Phase-1 scope) · assisted model keeps running — the build replaces steps one at a time, never big-bang | Monthly James review |
3 · Gate register
| Gate | Owner | The choice | Entry criteria | Exit criteria |
|---|---|---|---|---|
| G0 w/c 3 Aug | James | Internal tool · KubiqAI product · both (staged) | Volumes known (candidates/yr, principals, invoices/mo) · budget envelope named · Deidre-roadmap contradiction answered | One-line scope decision minuted · success metric with a number attached |
| G1 14 Aug | Josh (data) / Anthony (schema) | Is the spine trustworthy enough to operate from? | 30-field schema agreed · restricted fields access-controlled | 100% live principals + 12-mo candidates loaded · ≥95% completeness on core fields · zero known duplicates |
| G2 11 Sep | Anthony | Does assisted mode actually work here? | ≥1 vacancy run end-to-end · ≥6 huddles held · 1 month-end reconciled | Cycle time ≤10 working days · AI-draft acceptance ≥70% · every reconciliation exception named + resolved |
| G3 25 Sep | Anthony + Finance | Buy, defer, or stay-assisted — per category | 4+ weeks of measured volumes | Each trigger table row decided with the number that decided it · pilots monthly-cancellable only |
| G4 w/c 26 Oct | James (money) / Anthony (scope) / Tim (estimate) | What gets built at all | Quarter of metrics · build-candidate log · Tim's per-item estimates | Backlog = only joins used ≥weekly in assisted mode · each item pre-mortemed · budget ≤ the number G0 set |
4 · Workflow A — assisted recruitment cycle target ≤10 working days brief→decision
- Josh Day 0Vacancy brief — role, discipline, seniority, core/flex/network objective, rate range, sector needs. Structured template = brief §6.2 cut to essentials.
- AI Day 0, same dayDrafts JD + LinkedIn ad + ScoreApp questions + evaluation criteria + case-study brief (brief §7.1 list).
- Review Day 1Human approval gate — Josh edits/approves every AI-drafted artefact before anything publishes. Nothing AI-authored goes out unreviewed.
- Josh Day 1Publish. Applications land → AI dedupes each against the spine (existing person? previous applicant? → link, never duplicate).
- AI +24h after ScoreApp submitScoreApp export in (Zapier webhook) → assessment draft per brief §7.4 template: evidence summary, gaps, contradictions, suggested interview questions, recommendation + confidence. Facts / interpretations / inferences explicitly separated.
- Review Day 2–3Human review gate — Josh accepts / edits / disagrees, records progression decision + reason. Acceptance rate is logged (feeds G2: ≥70%). AI never rejects a candidate.
- Josh◆ Progress? Yes → Stage 1. No → held-for-future or declined, reason coded into the spine (searchable later — that's the talent asset).
- Josh Day 4–5 · 30 minStage-1 interview — structured form (brief §8.1 fields) + AI question pack generated from that candidate's specific gaps.
- Josh◆ Proceed? → case-study brief auto-issued with deadline + reminders.
- James Day 7–8Stage-2 interview — candidate presents case study. Weighted scoring (§8.4); disagreement between assessors → flagged for authorised tie-break, never averaged away.
- Josh Day 9 · 90 minStage-3 task — strategic scenario or discipline-specific practical. Whole journey recorded (questions asked, timing, versions), not just the deliverable.
- Decide Day 10Categorisation gate — leadership assigns Core / Flex / Network with reason + evidence + review date. Time-stamped category history in the spine.
- AIOnboarding plan auto-drafted: 10-working-day checklist, handbook issue + acknowledgement tracking, meetings 1–2 (Josh) + meeting 3 (James), readiness status. No deployment while mandatory items open — exception requires named authoriser.
5 · Workflow B — engagement rhythm every Core principal, every 4–6 weeks
- AI rollingHuddle scheduler — prompts the relationship owner when a principal's last meaningful contact > 6 weeks. Overdue list opens every Friday ops review.
- Owner 15 minHuddle — wellbeing, workload, client relationship, availability, future interests, risks (§13.3 agenda). Voice memo, not a form.
- AI same dayMemo → structured summary → spine update (availability, interests, flags) → action list to owner. Sentiment + risk flags (no work planned, repeated cancellations, payment grumbles) surface on the ops review board.
- Owner◆ Risk flagged? → named action with a date, tracked to closure. The "relationship health score" stays indicative — flags create conversations, not verdicts.
- AI monthlyAvailability chaser — every active principal confirms availability/capacity monthly; non-response after 2 nudges → owner escalation.
6 · Workflow C — time → invoice reconciliation weekly rhythm + month-end close
- Anthony at engagement startLoE registered in the spine: scope, dates, rate, VAT, expenses policy, maximum authorised value. Every amendment = new version, old terms never overwritten.
- Principal weekly, FriTime logged against client / project / LoE (sheet or PSA once G3 buys one). AI validates on entry: within dates? within allocation? within authorised value? duplicate?
- Approve weekly, Fri pmProject lead approves or returns with comments. Approved time → finance ledger.
- AI month-end, Day 1Three-way check per invoice: invoice ↔ LoE terms ↔ approved time. Within tolerance (±2% or £50, whichever greater) → recommend-approve. Outside → exception with the discrepancy explained (§16.2 codes: rate wrong, VAT wrong, over authorised value, time outside dates, duplicate, missing).
- Finance◆ Every invoice gets a human click. Recommend-approve ≠ auto-pay — finance approves; exceptions get an owner, a resolution or a formally recorded override.
- Lock month-end +5 daysAll exceptions closed → period locked. Late entries need authorised unlock with reason.
7 · Buy triggers — decided by numbers, not enthusiasm decided at G3 · 25 Sep
| Category | Trigger (measured in W3–W8) | If fired → pilot | If not fired | Indicative cost |
|---|---|---|---|---|
| ATS-lite | >20 active candidates/month or >2 concurrent vacancies | Teamtailor / Recruit CRM tier, monthly plan | Stay assisted on the spine | ~£50–150/mo total |
| PSA (time + capacity) | >10 concurrent engagements or >30 timesheets/month | Productive / Scoro (3 Jun shortlist stands) | Sheet + AI validation continues | ~£10–50/user/mo |
| AP three-way matching | >25 supplier invoices/month | Ramp / Precoro tier | AI rules-sheet check continues (minutes/month at current volume) | ~£3/invoice |
| E-sign / LoE repository | Immediately useful — low cost | PandaDoc or existing e-sign + versioned folder | — | ~£20–40/mo |
8 · Build gate — what Tim actually builds G4 · w/c 26 Oct
A join qualifies for the build backlog only if all four are true, evidenced from the assisted quarter:
- 1Used ≥ weekly in assisted mode (the build-candidate log proves it — every manual join touched twice gets logged with a tally).
- 2No trigger-passing off-the-shelf tool covers it (the buy table says so, with the number).
- 3Pre-mortem survived: "it's built and nobody uses it — why?" answered convincingly, in writing.
- 4Tim's estimate for the item fits the G0 budget envelope, with maintenance costed at 15–20%/yr forever, named against a person.
Expected backlog shape (prediction to test, not a commitment): the person-record join across recruitment→delivery→finance · permission-aware RAG search over the E5 corpus · the reconciliation join (invoice↔LoE↔time) if invoice volume grows · E5's assessment methodology encoded as configurable workflow. Explicitly not: portals, dashboards, comms modules, workflow engines — configuration or commodity, all of it.
9 · Metrics ledger — what the gates read
| Metric | Feeds | Target |
|---|---|---|
| Recruitment cycle time (brief → categorisation) | G2 | ≤10 working days |
| AI assessment-draft acceptance rate (accepted/edited vs rejected) | G2, G4 | ≥70% |
| Spine completeness — core fields, live principals | G1, weekly | ≥95% |
| Huddles on time (≤6 weeks since last contact) | weekly ops | ≥90% |
| Timesheets in by Friday | weekly ops | 100% (chase list otherwise) |
| Invoice exceptions / month + days-to-resolve | G3, month-end | every exception named; resolve ≤5 days |
| Measured volumes: candidates/mo, engagements, invoices/mo | G3 triggers | — (they decide the buys) |
| Build-candidate log: joins touched ≥2×, with tally | G4 | — |
10 · Review cadence
| Review | When | Who | Standing agenda |
|---|---|---|---|
| Ops review | Fri 30 min, from 21 Aug | Anthony, Josh (+Tim optional) | Metrics ledger · overdue huddles · exceptions · build-candidate log additions |
| Month review | Last Fri: 28 Aug, 25 Sep, 30 Oct | + James | Volumes vs triggers · gate readiness · budget burn |
| Gate reviews | G0–G4 per register above | Named owners | Entry/exit criteria only — no gate passes on vibes |
| Quarter build gate | w/c 26 Oct | James, Anthony, Tim | Backlog scoring · estimates · pre-mortems · go/no-go per item |
The platform the brief describes gets built here too — but each part earns its build by first running as a discipline, assisted. What never earns it, never gets built. That's the whole model.