Skip to content
The work between the systems

Workflow Automation & Integration

Integration between the systems you already run, scheduled jobs with named ownership, cross-system reactions and the auto-recovery that keeps them honest — because an automation that fails silently is worse than no automation.

The expensive work in most organisations is not inside any system. It is the copying, the chasing, and the scheduled job nobody owns. It is also the easiest of it to make disappear — and the easiest to make disappear badly, because an automation that fails silently is worse than the manual process it replaced.

What we build

The work itself

01

Integration between the systems you already run

The CRM, the finance system, the ticket tracker, the inbox, the warehouse. API-level integration where one exists, resilient webhook handling where it is pushed, and a thin anti-corruption layer so a schema change in one system does not fan out into five.

02

Scheduled jobs with named ownership

Every job in the estate is owned by someone, documented, versioned and logged. The question "what is this cron for" has an answer that is not a search of a wiki from four years ago.

03

Cross-system reactions and auto-recovery

Events in one system driving work in another, with idempotency on the receiving side, retries with backoff, poison-queue handling and a defined path for the cases that need a human.

04

Every job reports that it ran

Not only that it failed. A silent success is indistinguishable from a silent failure, and the second one is why the automation got built. Heartbeat telemetry, last-success timestamps and a check that resolves to unknown rather than pass when the heartbeat stops.

05

The human-in-the-loop paths

Exception queues, review interfaces and the design decision for which cases the automation should refuse rather than guess. The failure mode of an automation is not that it stops — it is that it keeps running after it stopped being right.

The hard parts

What goes wrong, named up front

A vendor who cannot tell you where their own discipline is difficult has either not done it or is not going to tell you the truth about your project either.

Silent failure is the default

The thing that makes an automation worth building also makes a failure easy to miss: nobody is watching the job because the job was built so nobody has to. Every automation needs a verifier that is run on a different cadence, by a different mechanism, than the automation itself.

Integration surfaces are not stable

APIs change, undocumented behaviour shifts, rate limits move. An automation that integrates five systems is a schedule of five future surprises; the only answer is contract tests at every boundary and the engineering to notice when a contract starts drifting.

The hard part is deciding what not to automate

An exception that happens weekly is an exception. The same exception happening daily is a process, and automating it entrenches the thing that was wrong rather than fixing it. The first conversation is usually about whether the process should exist at all.

Backend & Data

  • SupabasePostgres with authentication, row-level security, realtime subscriptions, storage and edge functions.
  • PostgreSQLThe default relational store, self-hosted or managed depending on the estate.
  • UpstashServerless Redis, queues and vector storage — caching, rate limiting, background jobs and retrieval indexes that bill per request.
  • RenderLong-running services, background workers and cron jobs that do not fit a serverless execution model.
  • Node.js & PythonApplication services and data or ML workloads respectively.
  • RustLatency-sensitive services and on-chain runtimes, where the performance and safety guarantees pay for the slower development cycle.
  • AWS, GCP & AzureWhere an enterprise estate, data residency or procurement requires a major cloud, with infrastructure defined in Terraform.

Delivery & Operations

  • GitHub & GitHub ActionsSource of truth, pull request review, CI pipelines and release automation.
  • Claude CodeAI-assisted implementation, migration and review inside the repository, with every change going through the same pull request and test gate as any other.
  • ResendTransactional email — enquiries, notifications and product mail — with delivery and bounce visibility.
  • OpenTelemetryVendor-neutral traces, metrics and logs, so observability is not a lock-in decision.
  • TerraformInfrastructure as code, so environments are reproducible rather than remembered.
  • Feature flags & remote configSeparating deployment from release across web and mobile, with kill switches on anything risky.

Agents & Orchestration

  • Model Context Protocol (MCP)A standard interface for exposing tools and data sources to models, so an integration is written once rather than per application.
  • Claude Agent SDKBuilding agentic applications on Claude — tool loops, permissioning and session handling — where a framework earns its place over a hand-rolled loop.
  • Hand-rolled agent loopsMost production cases. A plain loop with good tools and explicit termination conditions, because a framework you do not need is a dependency you cannot debug.
  • Sandboxed executionContainerised, network-restricted environments for any agent that runs code or touches a file system, with least-privilege credentials scoped per run.
  • Durable executionResumable, step-level workflow state so a long-running agent survives a restart without repeating side effects.
  • Trajectory evaluation & replayRecorded tool responses replayed in CI, with outcome scoring plus step and cost budgets asserted as tests.
  • Browser automationPlaywright-driven interaction for systems that expose no usable API, kept behind the same permission boundary as any other tool.
  • Circuit breakers & cost capsPer-run step limits, spend ceilings and downstream rate limiting, so a loop that goes wrong stops rather than escalating.

This is what we reach for when the decision is ours. When you already have an estate, we work in it — the stack is part of the engagement, not a precondition of it.

Roles we staff

  • Integration Engineer
  • Backend Engineer
  • Platform Engineer
  • Automation Engineer
  • Site Reliability Engineer

How to buy it

Pick the engagement model separately

Capability answers who works on it. The engagement model answers what we are accountable for, how it is priced and how it ends.

Other capabilities

Probabilistic systems

AI & Applied ML

LLM applications, retrieval systems, agents and applied ML built to a standard you can put in front of a regulator — with evaluation harnesses, cost controls and failure behaviour designed in rather than discovered in production.

Software that acts

Agentic Systems & Automation

Systems that choose their own next step — tool-using agents, orchestrated workflows and automation that spans your existing systems — designed so that what they are permitted to do, and what happens when they are wrong, are decided up front.

Irreversible deployment

Blockchain & Smart Contracts

Protocol and application development where a deployment cannot be rolled back and a defect is a withdrawal. Contract engineering, security review, upgradeability design and the on-chain boundary decision.

Gated releases

Mobile & Cross-Platform

iOS, Android and cross-platform applications delivered continuously despite a third party sitting between your merge and your users — staged rollouts, feature flags, release trains and a native-versus-cross-platform decision made on economics.

The paved road

Platform & Data

The substrate the other three stand on: cloud infrastructure, deployment pipelines, observability, data platforms and the internal paved road that determines how fast every team above it can move.

Software that moves

Robotics & Embedded

ROS2 applications, perception and state estimation, embedded and motor control, and the simulation-first workflow that lets behaviour be proven in a simulator where failure costs nothing before it meets hardware.

Evidence over opinion

Delivery Telemetry & Observability

Checks, runs, metrics and incidents across web, publishing, AI and blockchain systems — flow metrics with their denominators, daily verification of live products, and alerting designed not to cry wolf.

Publishing at cadence

Content Platforms & CMS

Ghost and headless CMS work, editorial workflow and scheduled publication, membership and subscription publishing, and the migrations that move a publication between platforms without losing URLs or archives.