Technical writing

Blog

Notes on system design, frontend architecture, backend patterns, real-time systems and engineering leadership.

AngularBackend ArchitectureBullMQClean ArchitectureDesign PatternsDistributed SystemsDual-Write ProblemEvent-Driven ArchitectureFrontend ArchitectureJavaJavaScriptJNIJVMMessage BrokersMicro FrontendsMicroservicesModule FederationNative CodeNode.jsReactRedisReliabilityRepository PatternSearchSharpSoftware TeamsSSEStrategy PatternTemplatingTransactional OutboxTypeScriptUI RenderingWorker Threads

Transactional Outbox and the Dual-Write Problem

The transactional outbox pattern solves the dual-write problem and enables reliable event publishing in distributed backends.

Transactional OutboxDual-Write ProblemEvent-Driven ArchitectureDistributed SystemsMessage BrokersBackend ArchitectureReliabilityMicroservices

Scalable Backends with Repository Pattern

Using the repository pattern to isolate data access, improve testability and keep business logic independent from persistence details.

Repository PatternNode.jsTypeScriptBackend ArchitectureClean Architecture

Micro Frontends for Scaling Software Teams

A practical look at micro frontends, team boundaries, deployment independence and architectural trade-offs.

Micro FrontendsFrontend ArchitectureAngularReactModule FederationSoftware Teams

Event-Driven Backend with SSE in Node.js

Designing a queue-based Node.js backend with image-processing workers and real-time client notifications using Server-Sent Events.

Node.jsSSEBullMQRedisWorker ThreadsSharpBackend Architecture

A Beginner’s Guide to Java Native Interface

Understanding how Java can call native code through JNI and where this bridge is useful.

JavaJNINative CodeJVM

Build an Aggregate Search Using Strategy Pattern

Applying the strategy pattern to combine multiple search providers behind a clean and extensible interface.

Strategy PatternSearchTypeScriptDesign Patterns

The Holy Grail of JavaScript Templating Engines

A short exploration of templating trade-offs in JavaScript applications.

JavaScriptTemplatingFrontend ArchitectureUI Rendering