40M
Migrating 40 million comments without losing one
A full migration of the comment platform behind a high-traffic publisher, with instant rollback.
- typescript
- nextjs
- kubernetes
- stripe
Most platforms are not hard because of their features. They are hard because of what happens between them: the order that is paid but not yet fulfilled, the import that failed halfway through, the two users editing the same record a second apart. Those states exist whether or not the system models them, and the ones a system does not model are the ones support ends up fixing by hand.
Custom development starts there. Before any screen is designed, the work is to name the entities, the transitions between their states and the guarantees each operation has to keep when something fails midway. Once that is settled, the interface is the easy part, and it can change without putting the data at risk.
Business rules are resolved on the server, in one place. A rule enforced only in the browser is a suggestion: it disappears the moment someone calls the API directly, and it drifts the moment a second client is built against the same backend. The same applies to authorisation, which belongs where the data is read and written, not where the button is drawn.
This is the discipline behind platforms serving 24 million users a year and internal tools used by a 30,000-employee company. That work is covered by non-disclosure agreements and is described without client names, but the engineering is the same one applied here, scaled to what a given project actually needs rather than to what sounds impressive in a proposal.
One detail decides more than it looks: roles and permissions are enforced on the server, never by hiding buttons in the interface. A hidden screen is a suggestion; a rule checked before the data is touched is a guarantee. The same applies to anything involving money, where the operation has to be idempotent - the same payment processed five times must leave the system exactly as it was after processing it once.
The specifics
40M
A full migration of the comment platform behind a high-traffic publisher, with instant rollback.
30,000
A production training game preparing an entire workforce on a new product, 13 days before it went public.
Native
A native application for Windows, macOS and Linux from a single codebase, with the tax data on the user machine rather than on a server.
30,000
Search, communications and peer recognition inside a large employer internal platform.
24M
Frontend, performance and production reliability on a real-time pricing platform.
Stripe
A SaaS ticketing platform built end to end, with Stripe payments and seat allocation that holds under concurrency.
How we work
The same process on a three-week engagement and on a two-year platform.
One session to understand the business process, not to show templates. We leave with priorities and a phased price.
Data model, integrations and a performance budget before the first screen is written.
Weekly releases to an environment you can visit. What gets approved gets deployed, it does not pile up.
Monitoring, verified backups and deployments anyone on the team can run.
A custom platform starts at EUR 12,000, against EUR 1,500 - 4,000 for a corporate site. The gap is not the number of screens: it is how much business process the software has to model, how many roles exist and how many external systems it has to talk to. Scoping produces a fixed price in phases rather than an open estimate.
That is the usual route and the recommended one. Pick the process that hurts most today, solve it end to end including roles and permissions, and ship it. The rest follows in phases, each with its own scope and price, instead of committing at once to a system nobody has used yet.
You do, and it ships with its deployment documentation. Maintenance is separate and optional: updates rehearsed outside production, backups verified by restoring them, and monitoring, with no lock-in period.
Next step
We reply within one business day with a phased scope proposal, or with the reason we are not the right studio for it.
We use one analytics cookie to see which pages get read. No advertising, no profiling, and nothing is set without your permission. Read the cookie policy