Skip to content

Our Process

How the work actually gets delivered

A structured lifecycle with working software every two weeks, deliverables you keep at every phase, and written status whether the news is good or bad. No black boxes.

Delivery lifecycle

Six phases, each with a defined outcome

You always know which phase you are in, what happens next, and what you will be holding at the end of it.

  1. 1

    Discovery

    1-2 weeks

    We map the problem before writing a line of code — the workflows, the constraints, the integrations nobody mentioned in the first call, and what success actually looks like in numbers.

    What happens

    • Workshops with the people who do the work, not just the people who commissioned it
    • Audit of the existing system, data model and integrations
    • Scope, risk and assumption register — written down and agreed
    • Success metrics defined before the build starts

    What you receive

    • Requirements brief with prioritised scope
    • Risk and assumption register
    • Indicative estimate and delivery plan
  2. 2

    Architecture & UX

    1-3 weeks

    The shape of the system and the shape of the screens get decided together, so the data model and the user journey do not fight each other six sprints in.

    What happens

    • Data model, API contracts and integration boundaries
    • Wireframes and clickable prototypes for the core journeys
    • Technology choices recorded with the trade-offs that drove them
    • Environment, security and access planning

    What you receive

    • Architecture decision records (ADRs)
    • API contracts and data model documentation
    • Clickable prototype of the primary flows
    • Sprint plan for the build
  3. 3

    Build in sprints

    2-week sprints, ongoing

    Working software every two weeks, demoed live. Nothing is 'done' because a ticket moved — it is done when it is reviewed, tested, merged and running in a shared environment you can click through.

    What happens

    • Two-week sprints with a live demo at the end of each
    • Every change peer-reviewed before merge
    • Automated tests written alongside the feature, not after
    • Continuous deployment to a staging environment you can access

    What you receive

    • Shippable increment demoed each sprint
    • Staging environment refreshed on every merge
    • Written sprint report with scope changes flagged
  4. 4

    QA & Hardening

    1-2 weeks before each major release

    The phase most projects skip and then pay for. Regression suites, load testing, security review and the unglamorous edge cases — expired tokens, duplicate webhooks, the customer who double-clicks submit.

    What happens

    • Automated end-to-end regression across critical journeys
    • Load and performance testing against expected peak, with headroom
    • Dependency and vulnerability scanning, secrets audit
    • Accessibility pass and cross-device verification

    What you receive

    • Test report with severity-classified findings
    • Performance baseline and results
    • Signed-off release checklist
  5. 5

    Launch

    1 week, plus a monitored first week

    Releases are rehearsed, reversible and boring. We deploy behind flags where we can, watch the dashboards during the first real traffic, and keep a rollback path open the whole time.

    What happens

    • Rehearsed deployment with a documented rollback path
    • Feature flags and phased rollout where the risk warrants it
    • Monitoring, alerting and on-call cover for the first week
    • Handover session and runbook walkthrough with your team

    What you receive

    • Production release with rollback plan
    • Monitoring dashboards and alert routing
    • Operational runbook and handover documentation
  6. 6

    Support & Iterate

    Ongoing retainer or rolling team

    Launch is the start of the useful data. We watch what real users do, fix what breaks, and feed the evidence back into the roadmap instead of guessing at the next feature.

    What happens

    • SLA-backed issue triage and resolution
    • Usage and performance review against the success metrics set at discovery
    • Security patching and dependency upkeep
    • Roadmap sessions on a regular cadence

    What you receive

    • Monthly health and performance report
    • Prioritised improvement backlog
    • Ongoing enhancement releases

Engagement rituals

How we keep you in the loop

The cadence that means you never have to chase us to find out where things stand.

Sprint demo

Every 2 weeks

Working software on a live call — not slides, not screenshots. If something is not ready to demo, we say so and explain why rather than showing a mock-up.

Written status

Every Friday

A short written update: what shipped, what slipped, what is blocked and what we need from you. It lands whether the news is good or bad, and it is written to be forwarded to your board.

Decision log

Continuous

Every architectural and scope decision is recorded with its date, its options and its reasoning. A year later, nobody has to reconstruct why a choice was made from a Slack thread.

Backlog refinement

Weekly

We size upcoming work with you so priorities reflect what the business needs this month, not what was written down at kick-off.

Quality & security

The practices that stay on even under a deadline

These are not optional extras that get cut when time is short. They are how we work by default.

Peer review on every change

No commit reaches your main branch without a second engineer reading it. Reviews cover correctness, security and whether the next maintainer will understand it.

CI on every pull request

Type checks, linting, unit and integration tests, and a build all run before a merge is possible. A red pipeline blocks the merge — there is no override for a deadline.

Tests written with the feature

Unit tests for business logic, integration tests for API contracts, and end-to-end coverage on the journeys that cost you money when they break. We do not chase a coverage percentage for its own sake.

Security as a standing task

Dependency scanning, secrets management, least-privilege access and encrypted data at rest and in transit — applied during the build, not bolted on before an audit.

Monitoring before launch

Dashboards, structured logs, error tracking and alert routing go live with the first release, so you find out about incidents from a page rather than a customer.

Reversible releases

Feature flags, phased rollouts and a rehearsed rollback path. Every deploy has a documented way back that someone has actually tested.

Principles

The engineering beliefs underneath it all

The process is the visible part. These are the convictions that shape the decisions inside it.

Choose boring where reliability matters

We prefer mature frameworks, observable infrastructure and patterns that future teams can maintain.

Design APIs before screens get crowded

Clear data models, access rules and integration contracts make products easier to scale and debug.

Automate release paths early

CI/CD, environment separation, logs and rollback planning reduce launch risk and support faster iteration.

Use AI where it improves a workflow

LLMs, OCR and RAG are most useful when connected to permissions, review flows, source data and measurable outcomes.

Tooling

What we run on

We bring a proven default stack, but we adopt your tools where you already have them — you should not have to learn ours.

Planning & tracking

JiraLinearNotionConfluence

Code & review

GitHubGitLabConventional CommitsTrunk-based branching

CI/CD

GitHub ActionsJenkinsDockerTerraform

Testing

JestVitestCypressPlaywrightJMeter

Monitoring

GrafanaSentryCloudWatchDatadog

Communication

SlackMicrosoft TeamsGoogle MeetLoom

Every good build starts with discovery

Tell us what you are trying to build and where it is stuck. We will walk you through exactly how the first few weeks would run and what you would have to show for them.