All articles

Backend & Platforms.

Decisions below the surface: a second language next to the first, a search that buckles, a recovery nobody has rehearsed.

Where to start

The article that opens up this topic.

Go in a PHP world: adding high-performance services without rebuilding everything

How I add new high-performance Go services to existing PHP systems without rebuilding everything. Strangler fig in practice instead of a big-bang rewrite.

8 min read

All articles

The 22 further articles on this topic.

25 October 2026 · 6 min read

What a normal deployment pipeline really needs: a check that can say no, one artefact through every stage, and a way back that has already been walked.

Read the article

30 September 2026 · 10 min read

Go code tells you almost everything about itself, except whether it runs. What I check in the first week: operation, build, reachable vulnerabilities, load.

Read the article

23 September 2026 · 10 min read

REST or gRPC? Why I decide public APIs differently from internal service communication, and which criteria actually matter.

Read the article

22 September 2026 · 11 min read

Synchronous or event-driven? Why I do not decouple backend services by default, and when a call, a queue or an event is the right fit.

Read the article

13 September 2026 · 7 min read

Three of the four reasons for splitting are delivery problems. What a service costs, what a module already does, and the four cases where a service really is one.

Read the article

13 September 2026 · 7 min read

The groundwork costs weeks, swapping the platform costs days. Three conditions under which a cluster pays, and what sits in between.

Read the article

12 September 2026 · 7 min read

Two machines and a switch are enough. The condition sits in the database, not the tooling, and without an abort rule a canary is just a slower release.

Read the article

12 September 2026 · 7 min read

Three models and what they suit, the filter one level down, the test that finds leaks, and the half of the effort that is not in the database.

Read the article

12 September 2026 · 7 min read

Five sentences to diagnose it, why the cuts follow the nouns, what helps immediately without a rebuild, and why merging back is not a step backwards.

Read the article

12 September 2026 · 8 min read

Traces first, one path instead of all: the PHP export quirk, the context in Go, the seam across the queue, and what drives the invoice.

Read the article

12 September 2026 · 7 min read

Three kinds of cache, why an expiry time usually wins, what goes wrong with cached permissions, and how the debt gets paid back.

Read the article

12 September 2026 · 7 min read

Partial updates instead of a framework switch: the three problems that actually annoy users, twenty lines of JavaScript, and where this route ends.

Read the article

12 September 2026 · 8 min read

Three layers with three origins, a start that fails on missing values, secrets without environment variables, and rotation without a restart.

Read the article

12 September 2026 · 8 min read

Why the interface comes before the new front end, where it gets cut, how authentication is solved, and what the layer must not do.

Read the article

12 September 2026 · 10 min read

When a schedule is no longer enough, how a job becomes a task with state, and why a job table is often enough instead of a dedicated queue.

Read the article

12 September 2026 · 8 min read

Five places where Go means something different from what it looks like: errors, concurrency, packages, interfaces and the missing framework.

Read the article

12 September 2026 · 9 min read

So the old data model does not travel into the new service: where the layer sits, what it translates, what it handles alongside, and when it goes.

Read the article

12 September 2026 · 8 min read

Which three measurements have to exist before the first rebuild, how to get them without specialist tooling, and why the average is the wrong number.

Read the article

12 September 2026 · 9 min read

The first cut decides whether there is a second. Four criteria, three candidates that almost always fit, and three places you never touch first.

Read the article

12 September 2026 · 9 min read

From "somebody uploads it" to a rollout with a way back: artefact, atomic switch, rollback, and where the database draws the line.

Read the article

9 April 2026 · 16 min read

What actually matters when an AWS region goes down: multi-region strategies, realistic failover concepts and the costs nobody plans for.

Read the article

10 July 2025 · 8 min read

A search migration from Sphinx to Manticore about latency, relevance and operational discipline. From 5 seconds to under 100 ms in practice.

Read the article

Related

If you want this solved, not just read.

The articles above describe how I work. If you would rather not do it yourself, this is the matching service.

Service

Backend development

Backends for SaaS and platforms that hold under real load: Go and PHP 8, event-driven, with tenant isolation and recovery designed in.

GolangPHP 8gRPCECS Fargate

Other topics

The other 3 areas.