// Blog

Writings & Notes

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

</>
Cybersecurity·

Zero-Trust Is Not a Product You Buy. It Is a Decision You Make.

Every security vendor sells Zero-Trust. Most organisations still do not have it.

</>
Backend Engineering·

TypeScript Is Not Optional for Production JavaScript

I converted a significant JavaScript codebase to TypeScript. Here is what we found in the process.

</>
Cybersecurity·

The Authentication Checklist Every Application Needs

Authentication is a security-critical component that most applications implement incompletely. Here is the complete checklist.

</>
AI & Machine Learning·

Overfitting Is Not Embarrassing. Deploying It Is.

Every ML model overfits during training at some point. The engineers who catch it before production know what to look for.

</>
DevOps·

Docker in Production: What Nobody Tells You

The documentation tells you how to build images. It does not tell you about the production realities.

</>
Backend Engineering·

Queue Everything That Can Wait

Synchronous processing is right for operations that must complete before responding. For everything else, a job queue is better.

</>
AI & Machine Learning·

Machine Learning Does Not Replace the Expert. It Amplifies Them.

On the right relationship between ML models and domain experts — from credit scoring, fintech, and enterprise AI deployments.

</>
Systems Design·

Design for Failure. Every System Will Fail.

The question is not whether your system will fail. It is whether you designed it to fail safely.

</>
PHP Development·

Laravel Queues in Production: The Gotchas Nobody Warns You About

Laravel Queues are excellent. These are the production behaviours that will catch you off guard if you deploy them naively.