Architecture decisions you can read in the code
Each project below starts with a constraint. The stack, the diagram, and the tradeoffs follow from there.








Real-time logistics orchestration platform
Event-driven microservices on Node.js + Kafka, PostgreSQL read replicas per region. Chose boring infrastructure over managed graph DB to hit latency targets.
Stack: Node.js · Kafka · PostgreSQL · AWS ECS · Terraform
Field operations mobile app
Healthcare API gateway and audit layer
SaaS multi-tenant data layer rebuild
Schema versioning via expand-contract pattern. Phased tenant cutover with feature flags. PostgreSQL row-level security replaced a brittle application-layer filter.
Flutter + local SQLite with CRDTs for conflict resolution. Sync layer built on top of a REST delta API — rejected real-time WebSocket as over-engineered for the network profile.
Node.js gateway with immutable audit log in append-only Postgres table. Encryption at rest and in transit enforced at the infrastructure layer via Terraform, not application code.


System redesign: from monolith to event mesh
The client's monolith deployed once a month. Every service shared a single Postgres schema — a change to billing broke inventory. We mapped every coupling before writing a line of new code.
After 14 months: 12 bounded services, independent deploy pipelines, p99 latency cut by 60%. The debt audit defined the sequence — we didn't rewrite, we extracted.
Stack: Node.js · RabbitMQ · PostgreSQL per service · Docker · AWS ECS · GitHub Actions
React + Next.js for SSR where SEO matters; plain React SPA where it doesn't. TypeScript everywhere — the type errors we catch in CI are the production bugs we don't ship.
Chosen for debuggability, not fashion
Node.js and Python for services; PostgreSQL as the default database. MongoDB only when the document model genuinely fits — not as a default to avoid schema discipline.
Every tool here has been in production under load. We pick the stack after reading the constraints — not before the scoping call.
AWS as primary cloud, Docker for containerization, Terraform for infrastructure-as-code. We provision the same way in staging as in production — no configuration drift.
Bring us the constraint. We'll map the architecture.
Book a scoping call. We diagnose before we propose — no canned estimates, no template decks.