Ideas, craft,
and process.
Thinking out loud on IT strategy, cloud architecture, security, and building software that scales.
All posts
Vue or React: how we choose a frontend framework
There is no universally right answer — but there is a right answer for your team, your timeline, and your product.
CI/CD with GitHub Actions, from commit to production
A pipeline that runs your tests, builds your assets, and deploys on green — so shipping becomes a non-event.
Database indexing: the performance win teams overlook
Most “the app is slow” tickets trace back to a query scanning a table it should have jumped straight into.
Designing for Core Web Vitals
LCP, CLS, and INP aren’t just Google metrics — they’re a proxy for how fast your site actually feels.
Zero-downtime deploys with Docker
Health checks, rolling updates, and graceful shutdowns — the pieces that let you deploy in the middle of the day.
A practical web application security checklist
Most breaches exploit the basics. Get the fundamentals right and you close the door on the vast majority of attacks.
Caching with Redis: strategies that actually help
Caching is easy to add and easy to get wrong. The trick is knowing what to cache — and when to throw it away.
Monolith or microservices: a pragmatic guide
Microservices solve organisational problems, not code problems. Most products should start as a well-structured monolith.
Type-safe full-stack development with TypeScript
Sharing types from the database to the UI turns a whole class of runtime bugs into red squiggles in your editor.