Skip to content
BEIND
Work

Getting off a no-code stack without breaking a live business.

Marine and offshore assurance · portal re-platform

The portal worked. That was the problem — it worked well enough that the business ran on it, and it was built on a no-code stack nobody could extend, test or take with them. Our job was to rebuild it exactly, then replace it.

Sector
Marine assurance and asset compliance
Our role
Full re-platform, frontend and backend
Engagement
Delivered 2026
  1. 01

    Rule Zero: never write to production

    The existing system held live client data — vessels, inspections, compliance status. So we set one rule above every other and enforced it in the repository's own instructions: read-only access to everything, no writes to the live platform under any circumstances. The entire recreation was built and demonstrated against fixtures, so no stage of the work could damage the business it was meant to save.

  2. 02

    The specification came from the running system

    Nobody had a specification, so we produced one. Every request, every workflow, every element event and every render binding in the live system was extracted into machine-readable files, screenshot and network-logged during a live walkthrough, and turned into a checkable document. That document, not anyone's memory, became the definition of done.

  3. 03

    Parity was audited, not assumed

    We kept a parity matrix: 63 workflows, 131 element events and 199 render bindings, each row marked done, gap, deferred or dead, each with a citation to the file and line that proves it. A page counted as finished only at zero open rows, twice audited. It is a tedious document. It is also the reason nobody discovered a missing feature after cutover.

  4. 04

    We fixed the bugs we were porting

    Reimplementation surfaces things. The original notification logic removed the acting user twice under two different identifiers, never de-duplicated its recipient list, and sent email inline in the request path. We documented each one and resolved it in the port rather than faithfully reproducing it — which is the whole argument for owning your code.

By the numbers

393
Audited parity rows
90
Endpoints ported
15
Tables migrated
0
Writes to production

Tell us what is breaking.

Whether you want one of our platforms or a team to build something new, the first conversation is the same: what are you running now, and where does it fall over?