Blog

Writing on data systems, software engineering, and building for the web.

You Want to Turn Your Web App Into a PWA?

So You Want to Turn Your Web App Into a PWA?A while back, I went down the PWA rabbit hole for a side project, a little calorie tracker I’d built with React and Vite. I kept seeing the term “PWA” throw...

Read more

How I Deploy My Next.js App on AWS Amplify

How I Deploy My Next.js App on AWS Amplify (Simple Guide + One Bug I Hit)A beginner-friendly walkthrough: why I picked Amplify, how I deploy, what it costs, and a sneaky bug I ran into.When my Next.js...

Read more

Deploying an Express Backend to AWS Lambda with GitHub Actions

Running an Express app locally is simple node index.js, done. Deploying it to AWS Lambda is a different story - not because it's hard, but because Lambda works nothing like a traditional server.Th...

Read more

Razorpay Integration in React + Node.js

Payments look simple from the outside. Show a button, collect money, unlock the feature.I wired up Razorpay into a subscription-based React + Node.js app recently and spent more time than I’d like to ...

Read more

Why Your PDF Looks Fine on Screen but Blurry When Printed (Node.js)

LLM GeneratedWe generate barcode PDFs using Puppeteer. One day, a client reported that barcodes aren’t scanning properly after printing. We checked the PDF - looked fine. Opened it on screen - sharp a...

Read more

How I Added APM to a Node.js App Using New Relic

Before New Relic, debugging a slow API in production meant one thing, staring at console.log output and guessing.Someone reports “the order page is slow.” You have no idea if it’s a slow query, a slow...

Read more

I Replaced Debezium with a Cron Job. Here’s How I Made It Reliable.

Debezium was going down 3–4 times a month. Its only job in our system was publishing events to Kafka — order created, PO created, that kind of thing. Every time it went down, events were lost.So I rep...

Read more