<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Bishal Regmi — Backend Engineering Blog</title><description>Weekly deep dives on backend engineering, databases, distributed systems, and AI infrastructure.</description><link>https://bishalregmi.com.np/</link><item><title>Designing a Notification System: Fan-Out and Delivery Guarantees</title><link>https://bishalregmi.com.np/blog/epic-notification-systems-fan-out-guarantees/</link><guid isPermaLink="true">https://bishalregmi.com.np/blog/epic-notification-systems-fan-out-guarantees/</guid><description>Patterns and guarantees for building notification systems that scale: fan-out strategies, retries, idempotency, and delivery guarantees.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>notifications</category><category>system-design</category></item><item><title>PostgreSQL Query Planner Internals: How the Cost-Based Optimizer Chooses a Plan</title><link>https://bishalregmi.com.np/blog/postgresql-query-planner-internals/</link><guid isPermaLink="true">https://bishalregmi.com.np/blog/postgresql-query-planner-internals/</guid><description>An overview of PostgreSQL&apos;s planner: cost model, statistics, join ordering, and why the wrong plan gets chosen sometimes.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>postgresql</category><category>backend</category><category>performance</category></item><item><title>Why your database connection pool is probably misconfigured</title><link>https://bishalregmi.com.np/blog/why-connection-pools-matter/</link><guid isPermaLink="true">https://bishalregmi.com.np/blog/why-connection-pools-matter/</guid><description>Connection pools look simple until your app falls over at 3am. Here&apos;s the math behind sizing them correctly, and the mistakes that get everyone eventually.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>postgresql</category><category>backend</category><category>performance</category></item><item><title>Redis Cluster: The 16384 Slots and the Gossip Beneath</title><link>https://bishalregmi.com.np/blog/redis-cluster-the-16384-slots-and-the-gossip-beneath/</link><guid isPermaLink="true">https://bishalregmi.com.np/blog/redis-cluster-the-16384-slots-and-the-gossip-beneath/</guid><description>A deep dive into Redis Cluster&apos;s internals: hash slots, gossip protocol, resharding, MOVED/ASK redirects, and failover mechanics.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>redis</category><category>cluster</category><category>distributed-systems</category><category>high-availability</category><category>caching</category></item><item><title>Idempotency keys: the one thing that saves you when a webhook fires twice</title><link>https://bishalregmi.com.np/blog/idempotency-keys-save-you-at-3am/</link><guid isPermaLink="true">https://bishalregmi.com.np/blog/idempotency-keys-save-you-at-3am/</guid><description>Payment gateways retry. Networks drop responses after the work already happened. Here&apos;s how idempotency keys stop double charges without slowing anything down.</description><pubDate>Sat, 20 Jun 2026 00:00:00 GMT</pubDate><category>payments</category><category>reliability</category><category>backend</category></item><item><title>From ILIKE &apos;%query%&apos; to search that feels instant</title><link>https://bishalregmi.com.np/blog/from-ilike-to-real-search/</link><guid isPermaLink="true">https://bishalregmi.com.np/blog/from-ilike-to-real-search/</guid><description>LIKE queries work fine until your table grows. The real path from a slow sequential scan to search that returns results as you type.</description><pubDate>Sat, 06 Jun 2026 00:00:00 GMT</pubDate><category>postgresql</category><category>search</category><category>backend</category><category>performance</category></item></channel></rss>