
  <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
      <title>Kamil Owczarek | Senior Full-Stack Engineer</title>
      <link>https://whoisarjen.com/blog</link>
      <description>Senior Full-Stack Engineer specializing in high-performance e-commerce, scalable architecture, and performance optimization. TypeScript, React, Next.js, Vue, Nuxt, PostgreSQL, Redis.</description>
      <language>en-us</language>
      <managingEditor>kamilow97@gmail.com (Kamil Owczarek)</managingEditor>
      <webMaster>kamilow97@gmail.com (Kamil Owczarek)</webMaster>
      <lastBuildDate>Mon, 06 Apr 2026 08:00:00 GMT</lastBuildDate>
      <atom:link href="https://whoisarjen.com/tags/serverless/feed.xml" rel="self" type="application/rss+xml"/>
      
  <item>
    <guid>https://whoisarjen.com/blog/replacing-redis-with-postgres-cache-migration</guid>
    <title>We Replaced Redis With PostgreSQL for Caching — Here&#39;s What Happened</title>
    <link>https://whoisarjen.com/blog/replacing-redis-with-postgres-cache-migration</link>
    <description>Our Redis cache kept dropping TLS connections, taking down the entire caching layer. After a misleading benchmark nearly sent us in the wrong direction, we migrated to PostgreSQL — same performance, zero drops, one less service to manage.</description>
    <pubDate>Mon, 06 Apr 2026 08:00:00 GMT</pubDate>
    <author>kamilow97@gmail.com (Kamil Owczarek)</author>
    <category>Caching</category><category>PostgreSQL</category><category>Redis</category><category>Performance</category><category>Architecture</category><category>Serverless</category><category>Migration</category>
  </item>

  <item>
    <guid>https://whoisarjen.com/blog/splitting-monolith-into-services-fix-api-bugs</guid>
    <title>When Doubling Your Server Memory Is the Wrong Fix: How Service Separation Solved Our OOM Crisis</title>
    <link>https://whoisarjen.com/blog/splitting-monolith-into-services-fix-api-bugs</link>
    <description>Our monolithic Nuxt app kept crashing at the 2GB memory limit. We doubled to 4GB — twice the cost, same underlying problem. After five days of failed optimization attempts (streaming compression, Redis polling, SWR caching), we split the monolith into three standalone services. Each got its own 2GB allocation, total cost dropped, and the crashes stopped.</description>
    <pubDate>Sat, 14 Mar 2026 12:00:00 GMT</pubDate>
    <author>kamilow97@gmail.com (Kamil Owczarek)</author>
    <category>Architecture</category><category>Nuxt</category><category>Nitro</category><category>Memory</category><category>Performance</category><category>Serverless</category><category>Vercel</category><category>TypeScript</category>
  </item>

    </channel>
  </rss>
