Skip to content
MORPHLIXTalk to Morphlix

Patterns we have already run in production.

Every venture and client engagement draws from the same set of reference architectures. Nothing here is theoretical — each pattern names the systems it currently runs, and what it costs to operate.

Why publish these

Because the architecture is not the moat — the judgement about which one fits your constraints is. Publishing the patterns shortens the first three conversations.

If one of these already describes your problem, say so and we can skip straight to the trade-offs.

The patterns

Eight references, in production.

Filter by the layer you are working at. Each pattern lists where it runs today and the trade-off it makes.

Platform3 ventures

Venture platform core

The shared foundation a new venture inherits on day one — multi-region AWS accounts provisioned from templates, a delivery pipeline, observability, and a security baseline. A venture team writes product code in week one instead of infrastructure.

Use it when

Standing up a new product with no existing estate
Several products need the same operational floor
A small team has to ship without a platform group

The trade-off

Opinionated by design. A venture that genuinely needs a different data or identity model pays to opt out, and occasionally that cost is real.

Control TowerCloudFormationCodePipelineCloudWatchCognito

Running in

Typical run cost

Baseline account and tooling overhead, before any product workload.

Applied AIProduction

Shared agent tool registry

One capability registry called by both the interface and the model. Each tool is defined once with its schema and permissions, so the action a user triggers is the identical implementation the agent invokes — and every agent call lands in the audit timeline.

Use it when

An agent needs to act, not just summarise
Agent and UI capabilities must not drift apart
Agent actions need to be auditable after the fact

The trade-off

Every capability now carries schema and permission overhead, which slows down adding a one-off feature that only humans will ever use.

BedrockAgentCoreLambdaDynamoDBEventBridge

Running in

Typical run cost

Per-invocation model cost dominates; the registry itself is negligible.

MigrationRepeatable

Zero-downtime cutover

Traffic shadowing, then dual writes with nightly reconciliation, then progressive read shifting, then a short write cutover with reverse replication left armed for a full business cycle. The cutover hour is the least interesting part of the plan.

Use it when

A maintenance window is commercially unacceptable
The source system's behaviour is not fully documented
Rollback must be provable, not asserted

The trade-off

Most of the budget goes on rehearsal rather than the move, and you pay for duplicate infrastructure through the hold period.

AWS DMSApplication Migration ServiceRoute 53ALBCloudWatch

Running in

Typical run cost

Duplicate running cost for the rehearsal and hold window, typically 4–8 weeks.

IntegrationProduction

Event-driven integration mesh

An asynchronous event backbone replacing point-to-point integrations between services and SaaS systems. Producers publish, consumers subscribe, and an upstream failure stops being an outage for everything downstream of it.

Use it when

More than a handful of systems need to stay in sync
Point-to-point integrations have become the bottleneck
Failures in one system must not cascade

The trade-off

Debugging becomes distributed. Without tracing and a dead-letter discipline in place from the start, this pattern makes incidents harder, not easier.

EventBridgeSQSSNSStep FunctionsX-Ray

Running in

Typical run cost

Billed per event and per state transition; predictable and usually small.

ClientProduction

Offline-first with reconciliation

The device holds the working set, writes locally, and reconciles on reconnect with deterministic conflict resolution. Built for venues, market stalls, and branches where connectivity fails exactly when the transaction matters.

Use it when

Users work where connectivity is unreliable
A failed write means a lost sale or a queue at the door
Two devices may act on the same record concurrently

The trade-off

Conflict resolution rules are business decisions, not technical ones, and getting them agreed takes longer than building the sync.

IndexedDBAppSyncDynamoDBLambdaService Workers

Running in

Typical run cost

Sync traffic only; the local tier costs nothing to run.

PlatformProduction

Multi-tenant isolation

Row, schema, or account-level tenant separation chosen against the compliance posture your buyers will demand, with metering and entitlements enforced at the data layer rather than in application code.

Use it when

Building a product to sell rather than operate internally
Tenants have differing regulatory requirements
Usage has to be accurate enough to bill from

The trade-off

The isolation model is the hardest thing to change later. Choosing account-level early costs more to operate; choosing row-level can block an enterprise deal.

CognitoDynamoDBAuroraIAMAPI Gateway

Running in

Typical run cost

Rises with isolation strength — per-tenant accounts cost meaningfully more.

SecurityProduction

Residency-first data architecture

Region-pinned storage and processing treated as an architectural constraint rather than a configuration flag, with least-privilege access, encryption by default, and immutable audit logging designed in from the first schema.

Use it when

Data cannot legally leave a jurisdiction
An auditor will eventually ask where records live
Handling beneficiary, health, or financial records

The trade-off

Multi-region features get harder and some managed services come off the table, which can mean building what you would rather have bought.

S3KMSIAMCloudTrailAthenaConfig

Running in

Typical run cost

Region duplication where residency requires it; otherwise standard.

MigrationRepeatable

Strangler fig decomposition

A routing and event seam introduced in front of the monolith, then one bounded context extracted at a time behind a flag. The monolith shrinks continuously and is never switched off in a single move.

Use it when

A rewrite would take longer than the business will wait
The monolith's behaviour is only partly understood
Each step needs to be independently reversible

The trade-off

You run two systems for months and pay the integration tax throughout. Teams that lose discipline here end up with a permanent hybrid.

API GatewayEventBridgeEKSLambdaAurora

Running in

Typical run cost

Duplicate running cost across the extraction period.

How to read these

A pattern is a starting point, not an answer.

Each of these has been wrong for at least one project. The value is in knowing which constraint pushes you off the default — and that is what discovery is for.

How scoping works

Every pattern has been wrong

At least once. The trade-off note on each one is the part worth reading twice.

Run cost is part of the design

We model the operating bill before the build, not after the first invoice.

Handover is assumed

Each pattern ships with runbooks, because your team ends up operating it.

These change

Patterns are revised when production teaches us something. Dates are on the walkthrough.

Walk one through with us

Bring the constraint,
we will bring the diagram.

An architect will walk any of these through against your estate — where it holds, where it breaks, and what it costs at your volumes. No charge for the conversation.