<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Abhijeet Apsunde</title><description>Staff engineer writing about production systems, AI agents in operations, and the messy middle of large-scale platforms.</description><link>https://abhijeetapsunde.com/</link><item><title>OPNsense at Home, Part 1: The Migration</title><link>https://abhijeetapsunde.com/blog/opnsense-part-1-the-migration/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/opnsense-part-1-the-migration/</guid><description>A GL.iNet running OpenWrt was fine until it was not. This is what happened when I replaced it with a proper firewall appliance, and what I learned about OPNsense in the first week.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate></item><item><title>OPNsense at Home, Part 2: Securing the Network</title><link>https://abhijeetapsunde.com/blog/opnsense-part-2-securing-the-network/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/opnsense-part-2-securing-the-network/</guid><description>DNS over TLS with Quad9, ad blocking without AdGuard, Suricata IDS at wire speed, and TLS inspection for power users who want a safety net.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate></item><item><title>OPNsense at Home, Part 3: Connectivity</title><link>https://abhijeetapsunde.com/blog/opnsense-part-3-connectivity/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/opnsense-part-3-connectivity/</guid><description>Dual WAN failover that actually works, WireGuard VPN without the default port, and fixing bufferbloat with FQ_CoDel to get A+ latency under load.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate></item><item><title>OPNsense at Home, Part 4: Observability</title><link>https://abhijeetapsunde.com/blog/opnsense-part-4-observability/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/opnsense-part-4-observability/</guid><description>Syslog, NetFlow, Vector, Loki, OpenSearch, and Grafana. Building the monitoring stack that tells you what is actually happening on your network.</description><pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate></item><item><title>The Chrome App I Walked Away From, and Came Back To</title><link>https://abhijeetapsunde.com/blog/the-chrome-app-i-walked-away-from-and-came-back-to/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/the-chrome-app-i-walked-away-from-and-came-back-to/</guid><description>Eleven years after writing a Roku remote in a Chrome App sandbox, I pulled the source from the Web Store, ported it to Electron with AI assistance, and fixed the thing reviewers had been asking for the whole time.</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate></item><item><title>The Chrome Extension I Shipped, and Walked Away From</title><link>https://abhijeetapsunde.com/blog/the-chrome-extension-i-shipped-and-walked-away-from/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/the-chrome-extension-i-shipped-and-walked-away-from/</guid><description>In 2015 I built a Chrome extension to send video URLs to a Roku. A few thousand strangers used it. Then Google deprecated the Chrome Apps platform. Some notes on shipping to the public and letting go.</description><pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Two Bugs From My First Job That I Still Think About</title><link>https://abhijeetapsunde.com/blog/two-bugs-that-taught-me-to-read-the-stack/</link><guid isPermaLink="true">https://abhijeetapsunde.com/blog/two-bugs-that-taught-me-to-read-the-stack/</guid><description>In 2010 I was a junior engineer debugging a JDBC server that would not start and a build that broke overnight. Both problems had nothing to do with our code. Both taught me something I still use.</description><pubDate>Sat, 12 Sep 2020 00:00:00 GMT</pubDate></item></channel></rss>