<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Posts on Sachin Chavan</title>
    <link>https://sachinsmc.me/blog/posts/</link>
    <description>Recent content in Posts on Sachin Chavan</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 23 Jun 2026 12:00:00 +0400</lastBuildDate>
    <atom:link href="https://sachinsmc.me/blog/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The Overhead Is the Story: My Take on Google&#39;s TurboQuant</title>
      <link>https://sachinsmc.me/blog/posts/turboquant-data-free-quantization/</link>
      <pubDate>Tue, 23 Jun 2026 12:00:00 +0400</pubDate>
      <guid>https://sachinsmc.me/blog/posts/turboquant-data-free-quantization/</guid>
      <description>Google&amp;rsquo;s TurboQuant compresses LLM KV caches and embedding vectors to 3-4 bits with no training and no codebook, and still beats methods that need both. The clever part is not the quantizer, it is what it refuses to store. Here is the intuition, with runnable NumPy you can paste and check.</description>
    </item>
    <item>
      <title>A Fake Web3 Job Sent Me a &#39;Test Project&#39;. It Was a Remote-Access Backdoor</title>
      <link>https://sachinsmc.me/blog/posts/fake-web3-job-rce-malware/</link>
      <pubDate>Mon, 22 Jun 2026 12:00:00 +0400</pubDate>
      <guid>https://sachinsmc.me/blog/posts/fake-web3-job-rce-malware/</guid>
      <description>A LinkedIn &amp;lsquo;investor&amp;rsquo; offered me a $70-120/hr Web3 job and sent a &amp;lsquo;skill assessment&amp;rsquo; repo with a 2-3 hour deadline. The moment its server boots, it fetches code from an attacker&amp;rsquo;s machine and runs it with full Node.js privileges. I recognized the trap, told him I&amp;rsquo;d run it (I hadn&amp;rsquo;t), and handed him back his own command-and-control link. Here is the full teardown.</description>
    </item>
    <item>
      <title>Failover Before the First Byte: An OpenAI-Compatible LLM Gateway in Pure Go</title>
      <link>https://sachinsmc.me/blog/posts/llm-relay-openai-gateway-go/</link>
      <pubDate>Sun, 21 Jun 2026 12:00:00 +0400</pubDate>
      <guid>https://sachinsmc.me/blog/posts/llm-relay-openai-gateway-go/</guid>
      <description>I just shipped llm-relay, a small OpenAI-compatible LLM gateway in pure Go (zero third-party dependencies). The interesting part is the failover: when a provider is rate-limited or down, it switches to the next one BEFORE any bytes reach the client, so the caller never sees half a stream and then a different model. Here is how it works, with the real code.</description>
    </item>
    <item>
      <title>Every Retrieval Is an Authorization Decision: Multi-Tenant RAG Done Safely</title>
      <link>https://sachinsmc.me/blog/posts/multi-tenant-rag-authorization-boundary/</link>
      <pubDate>Sat, 20 Jun 2026 12:00:00 +0400</pubDate>
      <guid>https://sachinsmc.me/blog/posts/multi-tenant-rag-authorization-boundary/</guid>
      <description>In a single-tenant RAG you trust the index. In a multi-tenant one, a shared index plus one missing filter leaks Tenant A&amp;rsquo;s documents into Tenant B&amp;rsquo;s answer. Here is the unified mental model that ties the metadata-filtering mechanics and the authorization layer together, treat the tenant filter as a policy decision, not app code, with the same architecture mapped across AWS, Azure, and Google Cloud (diagrams and Python included).</description>
    </item>
    <item>
      <title>Separations and the Tail: A Field Guide to Distributed Backend Design</title>
      <link>https://sachinsmc.me/blog/posts/distributed-systems-field-guide/</link>
      <pubDate>Fri, 19 Jun 2026 12:00:00 +0400</pubDate>
      <guid>https://sachinsmc.me/blog/posts/distributed-systems-field-guide/</guid>
      <description>Most of what makes a distributed system good is a handful of disciplined separations plus a real respect for the tail. To make that concrete, we design a small identity graph service from scratch, the same shape of system Airbnb runs at 7 billion nodes, and watch each principle earn its place. Node.js snippets included.</description>
    </item>
  </channel>
</rss>
