// Blog

Writings & Notes

Articles on engineering, systems design, startups, and lessons from the trenches.

</>
Systems Design·

Distributed Transactions: Why You Probably Do Not Need One

Two-phase commit, saga patterns, eventual consistency — most applications that reach for these could be redesigned to avoid the need.

</>
Backend Engineering·

How I Reduced SellTrove's API Response Time by 60%

A performance investigation that uncovered four independent optimisation opportunities — none of which required a rewrite.

</>
Backend Engineering·

Building APIs for Mobile: What Desktop Developers Miss

Mobile clients are not thin desktop browsers. They are intermittently connected, battery-constrained, and operating on unpredictable network conditions.

</>
Backend Engineering·

Building Reliable Webhooks: The Provider Side

Most developers think about webhooks as consumers. Here is what it looks like to build the webhook delivery system as the provider.

</>
Engineering Philosophy·

What Keeping Me Up at Night (Building SellTrove at Scale)

A candid look inside building a large-scale platform — the parts going well, the parts that are hard.

</>
Systems Design·

SaaS Architecture: What the Tutorials Skip

Building a SaaS platform is not the same as building a web application with a subscription.

</>
Career & Inspiration·

Teach What You Know

Every hour spent teaching has returned more to my own engineering than to the students.

</>
Systems Design·

Apache Kafka at Scale: Lessons From the SysSoft IoT Pipeline

Running Kafka for 15,000 records per minute from 5,000 devices taught me things about stream processing that documentation does not cover.

</>
PHP Development·

PHP 8.2 Readonly Classes: Why I Am Adopting Them Everywhere

Readonly classes are the most underused feature in modern PHP. On why immutability belongs in your production PHP codebase.