Atmora Tech

Engineering

Built for the workflow
you actually run

Most enterprises run happily on packaged software until they reach the part of the business that makes them money: the pricing rules, the approval chains, the exceptions handled in a spreadsheet. That is the part we build, test and hand over.

Overview

Systems built around the processes no packaged product was ever going to cover.

A custom build starts with a question packaged software cannot answer: what does your process do that nobody else's does? We spend the first weeks mapping that, on site, with the people who work around the gaps every day. The output is a domain model your operations team recognises, not a feature list.

From there we build in vertical slices. One real workflow reaches production early, usually inside 11 weeks, with authentication, audit trail and monitoring already wired in. You get to correct our reading of the domain while correcting it is still cheap, rather than discovering the misunderstanding at a demo six months later.

We write the system so your engineers can own it after we leave. Typed interfaces, migrations checked into the repository, a test suite that finishes in under eight minutes, and architecture decision records explaining why each awkward choice was made and which alternatives were rejected at the time.

11 weeks
median time from kick-off to first production release
0.6%
change failure rate across delivered services in year one
7m 40s
typical full CI run, commit to deployable artefact

Capabilities

What this covers

Six areas we staff properly. If your problem sits outside them, the honest note at the foot of this page says so.

  • Domain discovery and modelling

    Two to four weeks with the people who operate the process, producing an entity and event model, a catalogue of the exceptions that break naive designs, and a build sequence costed slice by slice.

  • Greenfield product build

    New systems built as vertical slices, each one a workflow that reaches production with its own tests, telemetry and rollback path, rather than a technical layer that only works once every other layer lands.

  • Spreadsheet and Access replacement

    Migrating the shadow systems finance and operations built for themselves. We keep the logic, drop the copy-paste, and reconcile the new figures against the old workbook for a full period before cutover.

  • Integration with what you already run

    Adapters for SAP, Dynamics, Salesforce and the in-house systems nobody documented, with contract tests so an upstream schema change fails our pipeline instead of your month-end close.

  • Data migration and reconciliation

    Repeatable migration runs against production copies, row-count and checksum reconciliation, and a documented rollback that has been rehearsed under time pressure rather than written down and hoped for.

  • Handover and team enablement

    Pairing with your engineers through the final two increments, plus runbooks, architecture decision records, and a local environment that boots from a single command on a new laptop.

Deliverables

What you get

  • Domain model and event map, reviewed with your operations team
  • Working software in production from the first increment onward
  • Automated tests covering business rules rather than trivial accessors
  • Migration scripts, reconciliation reports and a rehearsed rollback
  • Runbooks, architecture decision records and escalation paths
  • Source, infrastructure code and CI pipelines inside your own accounts

Stack

What we build it with

  • TypeScript
  • Node.js
  • .NET 8
  • Python
  • PostgreSQL
  • React
  • Temporal
  • Docker
  • GitHub Actions
  • Playwright
  • OpenTelemetry
  • Terraform

Process

How the engagement runs

Two-week increments against a written definition of done. You can stop at any increment boundary and keep everything built so far.

  1. Discovery

    Two to four weeks on site. We watch the process run, collect the exception cases, and produce a costed build sequence you can halve without losing coherence.

  2. First slice to production

    The opening workflow ships behind a feature flag with auth, audit and monitoring attached. Real users, real data, small blast radius, and our reading of the domain corrected early.

  3. Iterative build

    Two-week increments, each ending with something demonstrable running in your environment. Scope moves between increments; the release cadence does not.

  4. Migration and cutover

    Parallel running against the legacy system for at least one full reporting period, with reconciliation reports signed off before anything is switched off.

  5. Handover

    Your engineers pair with ours on the final increments, then run a release themselves while we watch. Support tapers over weeks instead of stopping on a date.

When this is the wrong engagement

If a configurable SaaS product already covers ninety per cent of your process and the remaining ten per cent is genuinely negotiable, buy the product, because custom development only repays its maintenance burden when the difference is where your margin lives.

FAQ

Questions we get asked

How do you price work when the scope is not fully known?

Discovery is fixed price. After that we work in two-week increments at a fixed monthly rate against a costed backlog you can reorder or stop at any increment boundary. Fixed-price quotes for a whole project tend to buy you a padded number and an argument about change requests.

Who owns the code and the infrastructure?

You do, from the first day. Repositories live in your GitHub or Azure DevOps organisation, infrastructure is provisioned into your cloud accounts with Terraform, and no part of the system depends on anything Atmora hosts. If the engagement ends, nothing has to be extracted.

What happens if our requirements change mid-build?

They will, and the slice model assumes it. Because each increment ends with working software rather than a document, changing direction costs you the increment you are in, not the ones behind it. We only ask that changes land at increment boundaries so estimates stay meaningful.

Can you work alongside our internal engineering team?

That is the usual arrangement. We run a mixed team with your engineers holding at least a third of the seats and reviewing our pull requests under the same standards we apply to theirs. Teams set up this way take over support in months rather than needing a second engagement.

Start a project

Tell us what is
breaking.

We reply within one working day, and the first call is with an engineer who would actually work on it — not an account manager. If we are not the right studio for the problem, we will say so on that call.

Start a project