Work

Built, delivered
and still running.

We would rather show one project in real detail than a wall of logos. Below is a platform we designed, built and continue to support. References are available on request, and we are happy to walk you through the system on a call.

Case study · Agriculture

One farming business,
running on one platform.

Sector
Agriculture · multi-site livestock
Scope
Operations platform — web dashboard and field mobile app
Stack
NestJS · PostgreSQL · Kafka · Next.js · Flutter · Docker
Surface
Browser for the office, Android and iOS for the field
Status
In production, under active support

The problem

Everything was recorded.
Nothing was findable.

A multi-site livestock operation was tracking animals, feed, health treatments, breeding and sales across paper forms, WhatsApp messages and a drawer full of spreadsheets. Each individual record existed somewhere. Getting from those records to a straight answer — what did this animal cost to raise, which pens are behind on their health checks, how much feed is left before the next order — took someone a day of collation, by which time the answer had moved.

Two things made an off-the-shelf product a poor fit. The operation runs multiple sites that must not see each other's data, and the people generating most of the records work in pens with dirty hands and an unreliable signal. Any system requiring them to sit at a computer afterwards was going to be filled in from memory at the end of the week, if at all.

What we built

A dashboard for the office,
an app for the pens.

The platform is split into independent services, each owning one part of the operation and communicating through an event stream. That sounds like overhead for a farm, and it would be — except it is what lets feed logging keep working when the sales reporting service is being updated.

  • Fourteen independent services, so a fault in one part of the business never takes the rest down with it.
  • Field staff log feeding, cleaning and health checks from their phones, with photo evidence and a QR scan that proves they were at the pen.
  • Each site's data is isolated at the database level, so one operation can never see another's, even through a bug.
  • Feed running low, a vaccination due, a machine overdue for a service — the system raises it by email or Telegram before anyone has to notice.
  • Cost of raising is calculated per animal from actual feed and medication consumed, not estimated at the herd level.
  • Sales produce a printable invoice, and the animal's lifecycle closes automatically off the back of it.

What changed

The record is made
where the work happens.

The single biggest change was not a feature. It was moving data capture to the moment and place the work is done, on a device people already carry. A feeding logged in the pen with a photo attached is a different quality of record from one reconstructed on Friday afternoon.

Everything downstream depends on that. Feed conversion figures, growth curves, cost per animal and compliance reporting are only as good as the raw capture, and no amount of dashboard design fixes a bad input.

The second change was who can answer a question. Management no longer waits for someone to collate a spreadsheet; the numbers are there, calculated the same way every time, and arguments have moved from whose figures are right to what to do about them.

Worth noting. This is the kind of system we mean when we say we build. It is not a website with a database behind it.

It runs multi-tenant with database-enforced isolation, survives partial outages, delivers alerts across three channels, and has a mobile app in the hands of people who do not think of themselves as computer users.

The same building blocks apply to a warehouse, a production line or a service fleet.

Other engagements

The shape of a typical job.

Not every engagement is a platform build. These are the patterns most of our work falls into, and roughly what each one involves.

  • 01

    Take over an environment

    A business outgrows its informal IT arrangement. We audit what exists, move ownership of domains and tenants into the company's name, close the gaps we find, and take on the monthly running.

  • 02

    Migrate to Microsoft 365

    Mail and files off an ageing server or a poorly configured tenant. Survey, build the destination properly, pre-seed the data, cut over out of hours, then stand by for the first two days.

  • 03

    Fix the security basics

    An assessment, then a prioritised remediation: multi-factor authentication, a backup that has actually been restored from, patching on a schedule, and a leaver process that works.

  • 04

    Replace the spreadsheet

    One process that has outgrown Excel gets scoped as a small first release, built, put in front of the people who use it, and extended from there once it has proven itself.

Next step

Tell us what you need.

A paragraph is enough to start. We come back with what we would do, what it would cost and how long it would take.