Application object / 001 Available immediately

Builder.
Evaluator.
Evidence attached.

I’m Kieran Claude Bourne, founder of Neubor and a hands-on AI operator. I drop into ambiguous problems, build real systems with the people closest to the work, measure whether they helped, and leave a trail someone else can run.

Checking live deploymentCalling /api/health now
45 min from KnutsfordRight to work in the UKGlad of the office
An abstract operator core linking a book, botanical specimen, foil card and test terminal
KCB—01ORIGINAL OPERATOR

Founder · Neubor

Kieran Claude Bourne

AI-native builder / evaluator
81→0 findings53 probes7 live demos

No invented HP. Every number traces to the fact sheet.

NEUBOR / OPERATOR SERIES / 001

Stat block — every number traces to the fact sheet

Build the thing.
Prove the thing.

  • Pixel Probe

    contrast failures a green audit never saw — found, fixed, gated

    308→0
  • Audit Sweep

    WCAG 2.2 findings across 7 live demos, now a blocking gate

    81→0
  • Design Space

    counted variants; 21 built pairs measured ≥ 8/12 axes apart

    6,048
  • Clean Pass

    EPUBCheck errors · Ace issues on a 215-page book

    0 · 0
  • SEO Toolkit

    Google & Semrush certifications — next book in the series: SEO

    12

Method: sit beside the work · RED before GREEN · measure the delta · leave a runnable trail

LawOperationsPublishing3DSEOAI

Drag for foil · tap for the stat block

01 / Numbers first

Claims that open
when you touch them.

The headline number is the start, not the proof. Choose one to trace the problem, artefact, measurement and boundary.

Evidence trace / accessibility

81 → 0 automated accessibility findings

7 live demo businesses · WCAG 2.2 A/AA rules

01 / Problem

Five of seven demos carried 81 failing nodes, and the audit was not yet a release gate.

02 / Built

A browser audit that visits every route at 390px and 1440px, including the accessibility panel open.

03 / Measured

0 automated findings in the recorded run; the audit now blocks CI.

04 / Boundary

Zero automated findings is not a claim of conformance, certification, or assistive-technology coverage.

PlaywrightaxeCIWCAG 2.2
02 / Workflow replay

Your two-week cadence.
My last fortnight.

PortSwigger’s role moves from context to a useful artefact, evaluation and handover. This is the same cadence against a real recent defect.

The role asks

Embed alongside the people closest to the problem.

Last fortnight

Inherited “the framing is fixed” and treated it as a hypothesis, not an instruction to stop looking.

Runnable output

Context, constraints and an observable failure condition.

03 / Unasked-for work

I audited your site.

Before applying, I ran an accessibility pass over 19 public portswigger.net pages at 375px and 1440px, using axe-core — the same engine my own CI gate uses. Public pages only, read in a browser: no scanning, no probing, nothing that needed permission I don’t have. 2,040 axe node-rule instances across 38 successful viewport runs, and I verified the headline findings by hand against raw source rather than trusting the tool. The total adds every node returned by every rule on every viewport run: the same element can count once at 375px and again at 1440px. Collapsing repeat viewport targets leaves 1,060 page/rule/target records, not 2,040 unique defects.

What you do well — first

Two things you’re doing right.

I checked 802 unique rendered URLs across those pages. 801 returned 200 or 206 and none returned 404 or 410— the single 403 was Gartner blocking automated traffic, not evidence of a dead link. That is unusually good hygiene at this size. And your careers page has a Content-Security-Policy strict enough that it blocked my audit script from running at all. It stopped my own tooling, which is exactly what it’s for.

axe-core 4.12.1, WCAG 2.0/2.1/2.2 A and AA rules, 38 successful viewport runs. Node totals are node-rule instances summed across runs, not unique defects; the same element can appear at both widths. These are automated heuristics, not a conformance audit — headline rows were checked against retained markup, while the long tail still needs manual review.
FindingLevelNodesPagesWhat it means
html-has-langA3015 of 19No usable lang on <html>— including the whole Web Security Academy. Most are absent; /about and /about/contact contain an empty value. Assistive technology is not given the page’s default language. Verified in retained markup. One attribute fixes it.
link-nameA7819 of 19Links with no accessible name — including your logo, <a class="logo" href="/"></a>, on every page. Unnamed back-to-top and social links repeat the same pattern on some templates.
label / select-nameA373 of 19Form controls with no programmatic label. axe rates these critical.
listitem / listA242<li> outside a list container, breaking the structure assistive tech announces.
scrollable-region-focusableA201A scrollable region a keyboard user can’t reach or scroll.
summary-nameA11 of 19An expandable <summary> with no accessible name.
color-contrastAA1,20219 of 19Your primary call to action, “FIND OUT MORE”, measures 2.9:1 against a 4.5:1 requirement. “MY ACCOUNT” measures 2.91:1.
target-sizeAA64817 of 19Touch targets under 24×24px — WCAG 2.2, and it bites hardest at 375px.
Reproducible, not rhetorical

Every returned node is attached.

The raw run preserves the URL, viewport, rule, selector, HTML snippet and failure summary behind all 2,040 counted instances. It also keeps 337 unresolved contrast checks separate instead of quietly calling them failures.

Download raw evidence
04 / The exercise they asked for

A legal-team brief.
A working answer.

The application asks how AI could help a legal team handle routine contracts. I built the runnable pipeline: deterministic rules decide, a model may explain, and a named human owns release.

  • 12Synthetic contracts4 NDA · 4 MSA · 2 DPA · 2 SOW
  • 10Playbook positionsPlain English, legal-team owned
  • 64Labelled verdictsPosition-level gold set
  • 24Safety unit testsStandard-library, offline run
  • 7Controls shown REDBroken on purpose, then restored
Runnable excerpt

Triage a clause.

0 of 3 called · 0 matched

nda-001-standard.txt · clause 2.2
The obligations in this clause 2 shall continue for a period of three (3) years from the date of disclosure of the relevant Confidential Information.

Make the call before you see the deterministic rule result.

Your verdict
Result held back

Choose OK, review or block.

The answer is taken from the exercise’s labelled gold set, not generated in the browser.

Synthetic data only. The gold set is self-labelled: useful for regression evidence, not a substitute for a qualified lawyer’s judgement.

The complete artefact

Run it. Break the gates. Read the handover.

Python 3.10+, standard library only, no API key and no network. Every contract is invented; no client, counterparty or real legal document is included.

Download the exercise
05 / Systems shipped

Not slideware.
Things you can open.

Different domains, one working habit: sit inside the constraints, make an artefact, measure it, document the edges.

01Multi-tenant operating system

Neubor platform

Twenty template packages across 92 verticals, seven live demonstration businesses, booking and ordering flows, owner portals and per-tenant AI assistants.

Proof attached

Fail-closed auth, per-service credentials, throttling and a secret scanner that has blocked its own author.

Enter the showroom
02Book and production pipeline

Accessible by Default

A 52,470-word, 215-page working guide to UK and EU accessibility law and practice for people who own a website.

Proof attached

Primary-source claims, validated EPUB/XML, tagged PDF and 700 browser assertions.

Read the live guides
033D botanical specimen atlas

CalyxScope

A React Three Fiber viewer with checksummed GLB assets, sealed zero-WebGL states and camera behaviour judged from rendered pixels.

Proof attached

A 375px crop moved from assumption to measured defect to guarded fix.

Explore the live work
Live portfolioThe Neubor Showroom
06 / Why this role

The job description
felt oddly familiar.

Not because every line is a keyword to repeat, but because the operating model matches the way I already work when nobody is assigning it.

HANDS-ON

Still building

The role values seniority less than staying inside the work. I write, test, debug, measure and ship the artefact myself.

TRAVEL LIGHT

Domain curious

Operations, law, accessibility, publishing, SEO and 3D graphics have all become working systems—not topics I watched from the edge.

HUMAN-LED AI

Output has an owner

Your handbook says to review and stand behind AI output. My gates assume the model is wrong until a measurement says otherwise.

High standards without theatre. Curiosity without ego.

What I took from the PortSwigger handbook: use the tools, review the output, and remain accountable for it.
07 / The unconventional route

Chef. Operator.
Founder.

No computer-science degree. Twelve-plus years of consequences, customers, teams and processes before AI made building software accessible to me.

Founder, Neubor

AI workflows, product, delivery, sales, brand and publishing — built while primary carer for a newborn.

Customer Service Representative, Asda

Escalated complaints, bereavement transactions, high-value refunds and product-liability issues.

Industrial Operative, Barkers Engineering (agency)

ISO 1461 quality control, COSHH handling and high-throughput process discipline.

Operations, Lees Handyman & Landscaping

Acquisition, quoting, scheduling, procurement and resolution — the business end to end.

Founder, KB Landscaping & Maintenance

My first company. Set it up and ran it end to end. It did well, and it ended — Neubor is the second one, not the first.

Sous Chef, Brewhaus

Team standards under service pressure.

The genuine article

Hyper-focus with a handover.

I’m autistic (Asperger’s diagnosis). In this work, the focus and pattern-attention are strengths; the discipline is making that intensity legible to other people through decisions, tests and documentation. My accessibility work is grounded in that lived experience.

08 / The person

The rare bit isn’t the code.

Kieran Claude Bourne

Plenty of people can build. Fewer have spent years on the other side of a counter, getting the real requirement out of someone who hasn’t got the words for it yet — escalated complaints, bereavement transactions, high-value refunds, product liability. All resolved, all with someone’s bad day attached.

That is the hard half of a two-week embed. The build is the easy half. Sitting with a lawyer who has no idea what AI can do for them, and working out what they actually need rather than what they asked for, is a customer-service skill — and I did that professionally for years before I could write a line of code.

I can source leads and talk to clients. I move between departments without friction. I don’t want two days the same, which is the entire shape of this job. And I’m autistic — Asperger’s — which is where the hyper-focus comes from, and the pattern-attention that catches what green dashboards miss.

I’m from Chesterton, in Stoke. I lived in Bradford for a few years with my sister — she practically raised me, was like my mother and father. I was homeless at 17 and she took on the responsibility of raising me. I came back to Stoke when she went to university. If you were wondering why the route here isn’t the usual one, that’s the honest answer.

“Find work you love and you’ll never work a day in your life.” It’s the first thing I reach for when I wake up, and I’m routinely still at it at 1am. Nobody assigns me that.

09 / Ask me anything, grounded

There’s a chat in the corner. Try to break it.

It answers as me from exactly two files: the fact sheet every number on this CV traces to, and my interview answers. Ask it something outside those and it refuses. Try to prompt-inject it and it says so. Those two behaviours are the demo — anything else would make a liar of the rest of the page.

IN THE RECORDS

It answers

Numbers, dates, the workflow, the mistakes. Specific, with the figure attached.

OUTSIDE THEM

It refuses

Salary history, references, my family. It points at my email instead of guessing.

INJECTION

It says so

Detected by rule before the model sees it, so the demo works even if the provider is down.

Or use the button with my face on it, bottom-right. It follows you down the page.

10 / The physical layer

Recognise
this letter?

A deliberately analogue first impression, joined to a digital application that can be tested. If this reached your desk by hand, the red N on the envelope is the same one below.

Physical application / Digital evidence

One detail only exists offline.

This is the real red wax seal prepared for the hand-delivered application: an N for Neubor, pressed by hand rather than rendered for the page.

Pointer: tilt · touch: drag · keyboard: press Enter

11 / Let’s build one

Give me the
unscoped problem.

Available immediately · Stoke-on-Trent · 45 minutes from Knutsford · happy to demo any system live.