JHJie Haninjiehan.hashnode.dev·Jul 25, 2025 · 10 min readDebugging a Mysterious Cypress Failure: It Was the return All AlongThis is another "post-mortem" blog after debugging a mysterious automation testing issue. TL;DR: Our test, which validates database entries, didn’t fail even when the backend service responsible for writing those entries was offline. The culprit? Cyp...00
JHJie Haninjiehan.hashnode.dev·Jun 19, 2025 · 4 min readRendering Strategies in Modern Web: CSR, SSR, and SSGThis is a quick recap of my effort to catch up on modern frontend trends, particularly the renaissance of Server-Side Rendering (SSR), and how it compares to Client-Side Rendering (CSR) and Static Site Generation (SSG). I’ve organized this post as pe...00
JHJie Haninjiehan.hashnode.dev·Jun 6, 2025 · 8 min readHow One Blocking Call Killed Our Entire FastAPI ServiceIncident Recap It happened to us on production environment: Our FastAPI service suddenly started timing out every request, including the plain Kubernetes health checks that didn’t touch the database or any external dependencies. We restarted the de...00
JHJie Haninjiehan.hashnode.dev·May 9, 2025 · 7 min readPostmortem: Building a New Email Microservice to Stand Beside a Legacy SystemBackground & Requirements About two years ago, I led a project to build a new email microservice for our company. The existing system—built about 15 years ago—was embedded in a monolithic codebase using a now-less-popular language. It sent customer e...00
JHJie Haninjiehan.hashnode.dev·May 2, 2025 · 5 min readFrom Mail Server to End Recipient: Email AuthenticationWe have a relatively new mail service built using Amazon SES (in addition to an old on-premise mail server). Our customers are mostly enterprise, and therefore layers of security checks. This blog attempts to make it easier to understand the email au...00