53d North / AI Engineering
02 Build  /  Code Factory

The 53d North Code Factory: A software team of agents. Run by engineers.

The Code Factory is our own AI-native engineering platform. A team of specialist agents plans, builds, tests and reviews software on a git backbone. Every change is fenced, logged and independently reviewed, and an engineer approves the plan and the release.

6Phases in our AI-native delivery lifecycle
2Human gates: approving the plan and promoting to production
5Frameworks every security finding is mapped to
0Agents that can review their own work

The Studio: Watch a job move through the team.

Every job runs in the Studio, our control room for the Code Factory. A lead agent splits the work and hands each piece to the right specialist. Reviewers check what was delivered, and the job waits for a person before anything ships.

Click through the views to see what our engineers see.

Coding Agent Studio
Night shift readyBudget cap set · 2 lanes
Example job #142 · Add MOT reminder emailsRunning
  • Swarm lead · plan approvedClaude
  • Analyst · 14 acceptance criteriadone
  • Coding agent · lane Abuilding
  • Test writer · lane Bbuilding
  • Security & compliance reviewer · coldqueued
job #142 · Add MOT reminder emails · branch job/142-mot-reminders
● Human gate · production promotionAwaiting engineer
Agents8 agents · 2 reviewers
Swarm leadPlans and delegates · does not write code
leadClaude
AnalystRequirements and acceptance criteria
taskClaude
Coding agentGeneral-purpose builder · scope-fenced
taskGPT
Test writerFollows the project test setup
taskLocal
Security & compliance reviewerDelivered code only · cannot edit
reviewerClaude
Code quality reviewerCorrectness, tests, maintainability
reviewerLocal
Shift supervisorTriages failed unattended jobs
opsClaude
Example review · job #142Risk: medium
0Critical
0High
1Medium
1Low
Customer email address written to application logMedium · 0.9 confidence
Where
reminders/send.py line 48
Evidence
log.info(f"sent to {customer.email}")
Impact
Personal data kept in logs beyond its retention period
Fix
Log the customer ID instead of the email address
Maps to
CWE-532 · OWASP A09 · UK GDPR Art. 5(1)(c) · ISO 27001 A.8.15
Delivery metrics · last 30 daysExample figures
Deployment frequency4.2 / weekSteady
Lead time for changes1.6 daysImproving
Change failure rate6%Within target
Time to restore38 minWithin target
● 11 follow-ups logged by agents, waiting for an engineer to prioritiseReview

Illustrative screens, based on the Studio · example job and figures

The team: Agents with one job each.

General-purpose agents drift. Ours are built for specific jobs, each with its own instructions, tools, permissions and step limits. Builders and reviewers are kept strictly apart.

Lead

Swarm lead

Gets oriented, splits the problem and delegates each piece to the best agent. It has the results reviewed and sends fixes back if needed. It doesn't write code itself.

Checked by a second, different model
Task

Analyst

Turns the brief into requirements with acceptance criteria, so every test has something to trace back to.

Writes the definition of done
Task

Coding agent

The builder. It works on its own branch, within the permissions set for the job, and can delegate or hand off to a better-suited teammate.

Scope-fenced to the task it was given
Task

Test writer

Writes tests in the project's existing style, including real-browser checks for anything a user will click.

Tests trace to acceptance criteria
Reviewer

Security & compliance

Reads only the delivered code, cold. It needs a file, a line and quoted evidence for every finding.

Can't edit. Never sees the brief
Reviewer

Code quality

Checks correctness, error handling, test coverage and maintainability, alongside a deterministic quality and security scan.

Can't edit. Runs on every change
Ops

Shift supervisor

Triages any job that fails while running unattended, works out why, and queues it for a person to decide.

Reports, never forces a fix
Docs

Documentation

Produces consultant-grade documentation alongside the code, covering architecture, runbooks and handover notes.

Written for your team, not ours

How a job runs: Six phases, git as the backbone.

Every job follows the same AI-native delivery lifecycle. The agents do the volume, and the gates in green are where a person decides.

  1. 01

    Branch per job

    Every job starts on its own git branch, with commits as it goes. Whole jobs can be reviewed or reverted in one step.

    Lead agentGit
  2. 02

    Plan, then approve

    The analyst writes requirements and acceptance criteria, and the lead proposes a plan. Nothing is built until the plan is approved.

    AnalystLead agentEngineer approves plan
  3. 03

    Build with checks in the repo

    Builders and test writers work in parallel lanes. The checks live in the repository, including real browser tests, so they run the same way every time.

    Coding agentTest writer
  4. 04

    Review, routed by risk

    Reviewers inspect the pull request cold. Low-risk changes move on, and anything higher-risk is routed to an engineer.

    Security reviewerQuality reviewerEngineer on high risk
  5. 05

    CI with bounded fix loops

    Continuous integration runs every check. Failures go back to a builder for a fix, but only a set number of times before a person is called in.

    CICoding agent
  6. 06

    Staged release, live monitoring

    Releases go to staging automatically and are security-gated. Promotion to production is manual, with rollback ready and the live system monitored.

    Release pipelineMonitoringEngineer promotes to production

Independent review: Reviewed by an agent that never saw the brief.

A reviewer that knows what the builder meant to do tends to see what it expects. Ours sees only what was delivered: the changed files and the diff. It can read the rest of the repository to judge whether something is exploitable, but it can't change a thing.

What the reviewer sees
Sees
  • The changed files
  • The diff
  • The rest of the repository, read-only
  • Installed scanners, with approval
Never sees
  • The task or brief
  • The conversation
  • The builder's reasoning
  • Any way to edit
  • Injection and access control
  • Secrets and cryptography
  • SSRF and XSS
  • Session handling
  • UK GDPR data protection
  • PCI DSS card data
  • Supply-chain risk
  • Prompt injection in AI features
Every finding mapped to
CWEOWASP Top 10ISO/IEC 27001:2022 Annex ANCSC Cloud Security PrinciplesUK GDPR articles

Each finding records its severity, file, line, quoted evidence, impact, recommended fix, compliance references and the reviewer's confidence. That gives you an audit trail you can hand straight to a security questionnaire.

For a more independent second opinion, the reviewer can run on a different model from the builder.

banditsemgrepgitleakspip-auditnpm audit

Guardrails: Focused, bounded, and on budget.

Agents left to themselves will keep finding more to do. We learned that on real projects, and built the Code Factory to stop it.

Scope fencing

Stay on the task

Agents work to the literal scope of the job. Anything else they notice is logged as a follow-up for a person to prioritise, not acted on.

No-progress detection

Stop going in circles

Agents that loop, re-read the same files or stop making progress are halted and flagged, rather than left to burn time and tokens.

Budgets & circuit breakers

Costs can't run away

Every job and every shift has a token and spend cap. Circuit breakers pause the line when something is wrong.

No escalation

Permissions never grow

Delegated agents inherit the stricter of the caller's and callee's permissions. Delegation is capped in depth and count, and reviewers can't delegate at all.

Trusted intake

Only trusted work gets in

Work items are accepted only from trusted authors, and their text is fenced against prompt injection before any agent reads it.

Model lock

The model you chose

Jobs can be locked to a single model, so no agent quietly switches to a more expensive one on its own.

“

An agent that's finished the task should stop. Every guardrail on this page started as a real problem on a real project, found and fixed by our own engineers.

Any model: Not tied to one provider.

The Code Factory works with frontier models, local models and private endpoints. We pick per role: a strong model to lead, a different one to verify, and smaller, cheaper ones where they do the job just as well. Prompt caching keeps repeated work cheap.

Anthropic ClaudeOpenAIOllama, local and cloudLM StudioPrivate OpenAI-compatible endpoints

The night shift: Work done overnight. Decisions made in daylight.

The factory can run unattended, working through approved jobs in parallel lanes within a budget cap. People make the calls that matter in the morning.

18:00 · Engineer

Approve the queue

Plans approved, budget cap set, lanes chosen.

Overnight · Agents

Build in parallel

Separate lanes, each on its own branch, with reviews and CI on every change.

Overnight · Supervisor

Triage failures

Failed jobs are diagnosed and parked, not forced through.

08:30 · Engineer

Review and promote

Morning report reviewed, findings decided, staging checked, and production promoted by hand.

Measured, not assumed

We track delivery the way the best engineering teams do.

Deployment frequencyHow often working changes reach production
Lead time for changesFrom approved plan to running in production
Change failure rateHow often a release needs fixing or rolling back
Time to restoreHow quickly a problem in production is put right
Questions · Code Factory

Common questions about the Code Factory.

Can AI agents push code to production?

No. Releases go to staging automatically after passing security gates, but promotion to production is always done by an engineer.

Who reviews the code the agents write?

A security and compliance reviewer that sees only the delivered code, never the brief; a code quality reviewer; deterministic scanners; and an engineer, who approves every merge.

How do you stop agents wasting time and money?

Agents are fenced to the literal task, stopped if they stop making progress, held to token and spend caps, and can be locked to a single model. Anything extra they notice is logged for a person to prioritise.

Is our code used to train AI models?

No. We only use AI services on business terms that exclude training on your data, or models we host ourselves.

Build with the Code Factory: Faster delivery, with nobody cutting corners.

The Code Factory is how a small, senior team delivers production-grade AI systems on an SME budget. It sits alongside our Data Factory inside every Build engagement.