<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://shubhammukherjee.in</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>monthly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/llm-evaluation-in-production</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/securing-web-apps-oauth-oidc</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/multi-agent-llm-orchestration</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/realtime-collaborative-editing-crdt</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/nextjs-turbopack-production-builds</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/kubernetes-operators-in-golang</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/scaling-vector-db-lookups</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/managing-schema-migrations-distributed-db</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/resilient-event-driven-webhooks-redis</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/profiling-nodejs-memory-leaks</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/container-queries-modern-css-layout</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/high-performance-images-cloudflare-workers</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/nestjs-clean-architecture-apis</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/reducing-aws-costs-serverless</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/deep-dive-css-grid-subgrid</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/nextjs-server-actions-optimistic-updates</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/why-smooth-scroll-and-gsap</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/from-notebook-to-production-ml</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/typescript-at-the-boundaries</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/custom-postgresql-query-parser</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/wasm-speeding-up-frontend-math</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/dark-mode-without-fouc</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/state-management-url-params</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/webpack-loaders-custom-parsing</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/cors-preflight-caching-guide</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/s3-presigned-urls-file-uploads</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/accessible-forms-keyboard-aria</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/css-render-devtools-profiling</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/turborepo-npm-workspaces-monorepo</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/docker-react-node-containerization</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://shubhammukherjee.in/blog/javascript-promises-event-loop</loc>
<lastmod>2026-07-04T20:14:06.875Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
</urlset>
