<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://blog.pragmaticbyharsh.com</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/anatomy-of-a-prompt-system-user-assistant-explained</loc>
    <lastmod>2026-02-15T06:25:46.633Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/choosing-embedding-models-dimensions-production-tradeoffs</loc>
    <lastmod>2026-02-10T18:30:49.066Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/what-are-embeddings-vector-similarity-explained</loc>
    <lastmod>2026-02-08T07:56:46.687Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/how-bpe-tokenization-works-llm-algorithm</loc>
    <lastmod>2026-02-03T18:30:23.826Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/what-are-tokens-llm-tokenization-explained</loc>
    <lastmod>2026-02-01T15:30:57.196Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/openai-prompt-caching-undocumented-cross-model-behavior-and-production-cost-implications</loc>
    <lastmod>2025-12-19T12:42:03.644Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/model-selection-for-ai-agents-measuring-token-costs-across-openais-model-family</loc>
    <lastmod>2025-12-19T12:12:12.259Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/token-explosion-in-ai-agents-why-your-costs-scale-exponentially</loc>
    <lastmod>2025-12-10T14:36:52.561Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/oop-fundamentals-for-ai-applications</loc>
    <lastmod>2025-10-25T15:11:27.377Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/solid-principles-for-ai-systems-why-your-rag-pipeline-needs-better-architecture</loc>
    <lastmod>2025-10-20T16:37:08.903Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/thread-wars-episode-3-rise-of-the-virtual-threads</loc>
    <lastmod>2025-07-29T11:49:26.497Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/thread-wars-episode-2-a-new-hope</loc>
    <lastmod>2025-07-25T13:37:42.941Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/thread-wars-episode-1-the-thread-menace</loc>
    <lastmod>2025-07-22T11:14:53.514Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/the-garbage-collector-who-works-when-he-feels-like-it</loc>
    <lastmod>2025-07-14T15:28:02.959Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/cqrs-in-action-designing-a-real-time-online-voting-system</loc>
    <lastmod>2025-07-08T15:29:11.594Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/designing-the-read-path-in-cqrs</loc>
    <lastmod>2025-07-01T08:42:19.103Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/designing-the-write-path-in-cqrs</loc>
    <lastmod>2025-07-01T05:57:06.009Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/the-cqrs-sync-architecture-the-bridge-between-two-worlds</loc>
    <lastmod>2025-06-23T06:49:00.508Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/why-cqrs-was-conceived-one-system-cannot-serve-two-masters</loc>
    <lastmod>2025-06-18T14:09:24.503Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/why-cqrs-was-conceived-when-write-optimized-databases-are-asked-to-read</loc>
    <lastmod>2025-06-16T06:13:37.023Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/why-cqrs-was-conceived-when-read-optimized-databases-are-asked-to-write</loc>
    <lastmod>2025-06-02T15:27:15.952Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/when-outbox-didnt-fit-but-its-mindset-saved-the-day</loc>
    <lastmod>2025-05-24T07:52:43.430Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/outbox-the-unsung-king-of-distributed-consistency-long-live-the-king</loc>
    <lastmod>2025-05-23T15:34:18.789Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/advanced-hashmap-series-thread-safety-in-hashmaps</loc>
    <lastmod>2025-05-11T11:02:14.782Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/advanced-hashmap-series-hashmap-vs-linkedhashmap-vs-treemap</loc>
    <lastmod>2025-05-06T16:30:30.587Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/advanced-hashmap-series-the-equals-and-hashcode-contract</loc>
    <lastmod>2025-05-01T16:01:18.428Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/advanced-hashmap-series-how-hashmap-works-internally-java-8-and-above</loc>
    <lastmod>2025-04-28T10:58:00.136Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/moms-are-hashmapping-geniuses-i-am-not-lets-code-a-hashmap-in-java</loc>
    <lastmod>2025-04-08T15:32:38.545Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/moms-are-hashmapping-geniuses-rehashing-load-factor-and-an-ever-expanding-kitchen</loc>
    <lastmod>2025-04-08T15:31:22.670Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/moms-are-hashmapping-geniuses-part-1-hashmap-hashing-collision-and-an-organized-kitchen</loc>
    <lastmod>2025-04-08T15:29:42.928Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/journey-down-memory-lane-how-i-misused-java-streams-and-wrecked-my-tracker-api</loc>
    <lastmod>2025-04-02T15:57:54.713Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/series/cqrs-detailed-breakdown</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/series/thread-wars</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/series/solid-ai</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/series/ai-tokens</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/series/llm-foundations</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/archive</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.pragmaticbyharsh.com/recommendations</loc>
    <lastmod>2026-04-15T16:15:22.373Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>