<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://doogal.dev</loc>
    <lastmod>2026-04-15T10:07:24.831Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://doogal.dev/networking-logic-how-your-data-navigates-the-internet</loc>
    <lastmod>2026-03-28T12:21:03.285Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/what-about-second-http-solving-the-100-file-connection-bottleneck</loc>
    <lastmod>2026-03-28T12:18:48.399Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-600ms-tax-why-every-tcp-connection-starts-with-a-state-negotiation</loc>
    <lastmod>2026-03-28T12:17:08.640Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/tcp-exponential-backoff-why-your-retries-are-doubling</loc>
    <lastmod>2026-03-28T12:15:51.831Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/tcp-why-the-internet-works-even-when-it-s-broken</loc>
    <lastmod>2026-03-28T12:12:33.668Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/fixing-biased-entropy-the-von-neumann-unbiasing-trick</loc>
    <lastmod>2026-03-28T12:11:17.527Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-your-computer-can-t-just-pick-a-number-navigating-the-spectrum-of-randomness</loc>
    <lastmod>2026-03-28T12:08:55.891Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-top-1-hiring-myth-it-s-a-ratio-not-a-talent-rank</loc>
    <lastmod>2026-03-28T12:07:26.561Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/git-internals-why-your-commits-aren-t-actually-diffs</loc>
    <lastmod>2026-03-28T12:06:06.547Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/your-javascript-array-is-a-hash-map-in-disguise</loc>
    <lastmod>2026-03-28T12:04:32.129Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/scalable-proximity-search-why-geohashing-beats-radius-queries</loc>
    <lastmod>2026-03-28T12:02:18.827Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/beyond-the-haversine-formula-why-i-use-geohashing-for-spatial-search</loc>
    <lastmod>2026-03-28T12:00:55.056Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-your-database-hates-count-distinct-and-why-hyperloglog-is-the-cure</loc>
    <lastmod>2026-03-18T15:42:17.612Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/stop-joining-millions-of-rows-for-every-single-swipe</loc>
    <lastmod>2026-03-18T15:39:18.624Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/how-big-tech-scales-view-counts-the-power-of-hyperloglog-and-harmonic-means</loc>
    <lastmod>2026-03-18T15:35:46.047Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/how-to-build-a-profanity-filter-that-actually-works</loc>
    <lastmod>2026-03-15T11:52:36.984Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/how-docker-actually-works-a-deep-dive-into-namespaces-and-cgroups</loc>
    <lastmod>2026-03-14T11:39:04.363Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/scaling-profanity-filters-why-i-use-tries-for-real-time-chat</loc>
    <lastmod>2026-03-13T11:37:15.038Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-your-linked-list-wants-to-be-a-bloody-tree</loc>
    <lastmod>2026-03-13T11:30:12.510Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/32-element-branching-how-scala-vectors-solve-immutable-memory-pressure</loc>
    <lastmod>2026-03-11T21:58:12.695Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-the-ring-buffer-is-the-foundation-of-high-performance-systems</loc>
    <lastmod>2026-03-11T12:33:37.489Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/your-undo-button-is-just-a-stack-of-pancakes</loc>
    <lastmod>2026-03-09T22:06:36.289Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-your-distributed-system-is-a-brawl-and-how-queues-fix-it</loc>
    <lastmod>2026-03-08T10:29:14.643Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-dynamic-arrays-aren-t-actually-dynamic</loc>
    <lastmod>2026-03-07T13:58:49.266Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-removing-the-head-of-linked-list-is-constant-time</loc>
    <lastmod>2026-03-06T10:19:51.104Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-pointer-arithmetic-of-constant-time-why-arrays-scale-o-1</loc>
    <lastmod>2026-03-05T16:39:59.421Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/nasa-s-125m-unit-error-why-your-api-needs-explicit-naming</loc>
    <lastmod>2026-03-04T10:22:09.911Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-doing-nothing-is-mathematically-your-fastest-debugging-tool</loc>
    <lastmod>2026-03-03T12:22:38.234Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-your-backup-strategy-might-be-a-100-million-gamble</loc>
    <lastmod>2026-03-02T12:05:40.247Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/preventing-stack-overflows-why-base-case-placement-is-critical</loc>
    <lastmod>2026-03-01T20:53:43.101Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/your-first-management-role-is-a-career-reset-not-a-promotion</loc>
    <lastmod>2026-02-28T10:48:03.177Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/don-t-build-a-distributed-system-until-you-re-forced-to</loc>
    <lastmod>2026-02-27T12:00:08.305Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/delivering-the-pumpkin-before-halloween-why-lead-time-for-changes-dictates-engineering-value</loc>
    <lastmod>2026-02-26T13:45:30.301Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/why-high-deployment-frequency-is-the-secret-to-software-stability</loc>
    <lastmod>2026-02-25T13:07:20.346Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/stop-guessing-why-dora-metrics-are-the-only-way-to-scale-without-breaking-everything</loc>
    <lastmod>2026-02-24T12:02:03.092Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/stop-paying-the-office-drone-tax-why-weird-teams-ship-better-code</loc>
    <lastmod>2026-02-23T16:29:17.885Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-law-of-loudness-why-your-code-should-scream-not-whisper</loc>
    <lastmod>2026-01-06T21:06:55.500Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/silent-failures-the-junior-trap-you-need-to-avoid</loc>
    <lastmod>2026-01-06T21:06:39.976Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/your-comments-are-rotting-so-i-hope-your-tests-have-a-long-shelf-life</loc>
    <lastmod>2026-01-06T21:06:25.592Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/stop-letting-third-party-libraries-hold-your-codebase-hostage</loc>
    <lastmod>2026-01-06T21:06:12.142Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-cognitive-budget-how-i-write-code-i-can-actually-maintain</loc>
    <lastmod>2026-01-06T21:05:58.600Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/clear-tests-scream-aaa-arrange-act-assert</loc>
    <lastmod>2026-01-06T21:02:48.840Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-3-argument-rule-how-to-stop-argument-bankruptcy</loc>
    <lastmod>2026-01-05T11:00:17.448Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/dont-let-the-domains-touch-the-professional-way-to-avoid-the-switch-smell</loc>
    <lastmod>2026-01-02T11:00:22.189Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-tldr-rule-how-i-structure-files-to-not-annoy-my-team</loc>
    <lastmod>2025-12-31T11:00:42.059Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-and-test-how-i-spot-a-monster-function-before-it-bites-me</loc>
    <lastmod>2025-12-29T11:00:37.743Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/stop-saving-keystrokes-i-spend-3-seconds-to-save-3-hours</loc>
    <lastmod>2025-12-26T11:00:41.526Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-squint-test-how-i-fix-code-that-looks-like-a-grey-brick</loc>
    <lastmod>2025-12-24T11:00:18.918Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/localhost-is-a-lie-the-happy-path-fallacy</loc>
    <lastmod>2025-12-22T11:00:36.938Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/stop-writing-comments-why-senior-devs-hate-stale-lies</loc>
    <lastmod>2025-12-20T09:08:20.992Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/the-sleep-deprived-senior-test-why-i-hate-your-magic-numbers</loc>
    <lastmod>2025-12-19T07:14:09.515Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/code-is-a-user-interface-and-yours-might-be-terrible</loc>
    <lastmod>2025-12-10T23:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://doogal.dev/page/links</loc>
    <lastmod>2026-04-15T10:07:24.831Z</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://doogal.dev/archive</loc>
    <lastmod>2026-04-15T10:07:24.831Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://doogal.dev/recommendations</loc>
    <lastmod>2026-04-15T10:07:24.831Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>