<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://blog.michaelsam94.com/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-datastore-migration-sharedpreferences/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-deeplink-attribution-install/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-dependency-injection-koin/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-desugaring-java-time/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-emulator-ci-testing/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-feature-flags-implementation/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-firebase-remote-config-strategies/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-gradle-managed-devices-testing/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-health-connect-integration/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-hilt-assisted-injection/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-hilt-multibindings/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-kotlin-multiplatform-migration-guide/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-lifecycle-aware-components/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-modularization-strategy/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-multi-module-navigation-compose/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-paging3-compose/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-paging3-remote-mediator/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-room-migrations-testing/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-savedstatehandle-process-death/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-screenshot-testing-paparazzi/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-splash-screen-api/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-viewmodel-scoping-navigation/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-authentication-jwt-vs-sessions/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-documentation-openapi/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-gateway-patterns/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-pagination-keyset-vs-offset/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-rate-limiting-algorithms/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-security-owasp-api-top-10/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-api-versioning-deprecation/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-bulkhead-isolation-pattern/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-caching-invalidation-strategies/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-iot-at-scale/</loc>
    <lastmod>2026-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-content-provider-modern/</loc>
    <lastmod>2026-07-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sensor-fusion-clock-sync-real-time/</loc>
    <lastmod>2026-07-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-build-variants-flavors/</loc>
    <lastmod>2026-07-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-2-0-1-vs-1-6/</loc>
    <lastmod>2026-07-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-broadcast-receiver-modern-alternatives/</loc>
    <lastmod>2026-07-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/devsecops-shift-left/</loc>
    <lastmod>2026-07-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/spatial-computing-ar-mobile/</loc>
    <lastmod>2026-07-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-auto-app-development/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/privacy-engineering-mobile-gdpr/</loc>
    <lastmod>2026-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-app-startup-metrics-optimization/</loc>
    <lastmod>2026-07-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/digital-twins-architecture/</loc>
    <lastmod>2026-07-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/secrets-management/</loc>
    <lastmod>2026-07-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-app-shortcuts-dynamic/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/zero-trust-mobile-apps/</loc>
    <lastmod>2026-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-a-b-testing-firebase/</loc>
    <lastmod>2026-07-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/supply-chain-security-slsa-sbom/</loc>
    <lastmod>2026-07-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-16kb-native-libs-migration/</loc>
    <lastmod>2026-07-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-ai-for-privacy/</loc>
    <lastmod>2026-07-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-workflow-vs-agent-patterns/</loc>
    <lastmod>2026-07-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-pigeon-platform-channels/</loc>
    <lastmod>2026-07-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-tool-use-error-recovery/</loc>
    <lastmod>2026-07-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/post-quantum-cryptography-migration/</loc>
    <lastmod>2026-07-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-tool-selection-routing/</loc>
    <lastmod>2026-07-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ota-firmware-updates-iot/</loc>
    <lastmod>2026-07-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-subagent-delegation-patterns/</loc>
    <lastmod>2026-07-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/passkeys-webauthn-implementation/</loc>
    <lastmod>2026-07-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-sandboxing-code-execution/</loc>
    <lastmod>2026-07-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/progressive-web-apps-2026/</loc>
    <lastmod>2026-07-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-parallel-tool-execution/</loc>
    <lastmod>2026-07-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/serverless-2026/</loc>
    <lastmod>2026-07-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-observability-tracing-spans/</loc>
    <lastmod>2026-07-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/container-image-security-sbom/</loc>
    <lastmod>2026-07-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-multi-turn-state-management/</loc>
    <lastmod>2026-06-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/infrastructure-as-code-opentofu-terraform/</loc>
    <lastmod>2026-06-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-memory-summarization-strategies/</loc>
    <lastmod>2026-06-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fast-cicd-pipelines/</loc>
    <lastmod>2026-06-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-human-in-the-loop-approval/</loc>
    <lastmod>2026-06-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gitops-argocd-flux/</loc>
    <lastmod>2026-06-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-guardrails-input-output/</loc>
    <lastmod>2026-06-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-cost-optimization-finops/</loc>
    <lastmod>2026-06-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-graph-workflows-langgraph/</loc>
    <lastmod>2026-06-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ebpf-observability-opentelemetry-obi/</loc>
    <lastmod>2026-06-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-evaluation-trajectory-analysis/</loc>
    <lastmod>2026-06-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-accessibility-semantics/</loc>
    <lastmod>2026-06-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-episodic-semantic-memory/</loc>
    <lastmod>2026-06-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/tanstack-query-patterns/</loc>
    <lastmod>2026-06-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-deterministic-replay-testing/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multi-region-active-active/</loc>
    <lastmod>2026-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-cost-control-budgets/</loc>
    <lastmod>2026-06-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/partial-prerendering-nextjs/</loc>
    <lastmod>2026-06-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-computer-use-browser/</loc>
    <lastmod>2026-06-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-app-startup-library/</loc>
    <lastmod>2026-06-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-code-execution-repl/</loc>
    <lastmod>2026-06-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rust-web-toolchain/</loc>
    <lastmod>2026-06-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webassembly-beyond-browser-wasi/</loc>
    <lastmod>2026-06-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/world-cup-real-time-analytics-player-ball-tracking/</loc>
    <lastmod>2026-06-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/local-first-apps-crdts/</loc>
    <lastmod>2026-06-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/edge-computing-functions/</loc>
    <lastmod>2026-06-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-server-components-production/</loc>
    <lastmod>2026-06-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/chaos-engineering-practical/</loc>
    <lastmod>2026-06-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/websocket-architecture-at-scale/</loc>
    <lastmod>2026-06-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/designing-for-observability-slos/</loc>
    <lastmod>2026-06-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-riverpod-state-management/</loc>
    <lastmod>2026-06-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/managing-technical-debt/</loc>
    <lastmod>2026-06-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-custom-lazy-layouts/</loc>
    <lastmod>2026-06-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-pyramid-vs-trophy/</loc>
    <lastmod>2026-06-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/jetpack-compose-lessons-10-years-android/</loc>
    <lastmod>2026-06-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rate-limiting-backpressure/</loc>
    <lastmod>2026-06-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webhooks-reliable-delivery/</loc>
    <lastmod>2026-06-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-modifier-node-api/</loc>
    <lastmod>2026-06-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/grpc-web-browser/</loc>
    <lastmod>2026-06-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/how-i-architected-an-ev-charging-platform/</loc>
    <lastmod>2026-06-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/handling-flaky-networks-mobile/</loc>
    <lastmod>2026-06-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ai-gateway-llm-proxy/</loc>
    <lastmod>2026-06-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/htmx-hypermedia-apps/</loc>
    <lastmod>2026-06-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/event-driven-outbox-pattern/</loc>
    <lastmod>2026-05-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/feature-flags-trunk-based-development/</loc>
    <lastmod>2026-05-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/designing-tool-schemas-for-agents/</loc>
    <lastmod>2026-05-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/zero-trust-network-access/</loc>
    <lastmod>2026-05-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/idempotency-distributed-systems/</loc>
    <lastmod>2026-05-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/xss-prevention-csp-trusted-types/</loc>
    <lastmod>2026-05-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/secret-scanning-pre-commit/</loc>
    <lastmod>2026-05-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/websocket-reconnection-backoff/</loc>
    <lastmod>2026-05-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/clean-architecture-pragmatically/</loc>
    <lastmod>2026-05-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/websocket-heartbeat-ping-pong/</loc>
    <lastmod>2026-05-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-caching-in-practice/</loc>
    <lastmod>2026-05-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webhooks-signature-verification/</loc>
    <lastmod>2026-05-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/modular-monoliths-vs-microservices/</loc>
    <lastmod>2026-05-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webhooks-retry-idempotency/</loc>
    <lastmod>2026-05-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-ffi-native-interop/</loc>
    <lastmod>2026-05-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webgpu-compute-graphics/</loc>
    <lastmod>2026-05-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/platform-engineering-internal-developer-platform/</loc>
    <lastmod>2026-05-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webauthn-passkeys-server/</loc>
    <lastmod>2026-05-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/offline-first-flutter-sync/</loc>
    <lastmod>2026-05-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webassembly-in-the-browser/</loc>
    <lastmod>2026-05-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-workers-offloading-compute/</loc>
    <lastmod>2026-05-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/zero-downtime-database-migrations/</loc>
    <lastmod>2026-05-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-web-2026/</loc>
    <lastmod>2026-05-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-view-transitions-multi-page/</loc>
    <lastmod>2026-05-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/developer-productivity-metrics-space/</loc>
    <lastmod>2026-05-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-storage-indexeddb-patterns/</loc>
    <lastmod>2026-05-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-for-frontend-bff/</loc>
    <lastmod>2026-05-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-monorepo-melos/</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-speculation-rules-prefetch/</loc>
    <lastmod>2026-05-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-custom-renderobjects-paint/</loc>
    <lastmod>2026-05-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-signals-fine-grained-reactivity/</loc>
    <lastmod>2026-05-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-embedded-iot/</loc>
    <lastmod>2026-05-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-scroll-snap-carousels/</loc>
    <lastmod>2026-05-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-vs-kotlin-multiplatform/</loc>
    <lastmod>2026-05-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rest-vs-grpc-vs-graphql-2026/</loc>
    <lastmod>2026-05-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-popover-api-native/</loc>
    <lastmod>2026-05-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/coap-constrained-devices/</loc>
    <lastmod>2026-05-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-resource-hints/</loc>
    <lastmod>2026-05-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/riverpod-vs-bloc-2026/</loc>
    <lastmod>2026-05-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-lcp-optimization/</loc>
    <lastmod>2026-05-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/proto-datastore-typed-preferences/</loc>
    <lastmod>2026-05-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-inp-interaction/</loc>
    <lastmod>2026-05-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-performance-impeller/</loc>
    <lastmod>2026-05-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-image-formats-avif/</loc>
    <lastmod>2026-05-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/terraform-testing-policy-as-code/</loc>
    <lastmod>2026-05-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-font-loading/</loc>
    <lastmod>2026-05-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-serialization-beyond-json/</loc>
    <lastmod>2026-05-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-core-web-vitals/</loc>
    <lastmod>2026-05-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-3-patterns-records-sealed/</loc>
    <lastmod>2026-05-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-performance-bundle-splitting/</loc>
    <lastmod>2026-05-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/wasm-workloads-kubernetes/</loc>
    <lastmod>2026-05-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-islands-partial-hydration/</loc>
    <lastmod>2026-05-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/state-of-flutter-2026/</loc>
    <lastmod>2026-05-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-htmx-server-driven-ui/</loc>
    <lastmod>2026-05-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-foreground-service-types/</loc>
    <lastmod>2026-05-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-forms-native-validation/</loc>
    <lastmod>2026-05-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/caching-strategies/</loc>
    <lastmod>2026-05-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-dialog-element-modal/</loc>
    <lastmod>2026-05-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/whats-new-android-17/</loc>
    <lastmod>2026-05-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/api-versioning-strategies/</loc>
    <lastmod>2026-05-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-swift-export/</loc>
    <lastmod>2026-05-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphql-federation-supergraph/</loc>
    <lastmod>2026-04-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-planning-react-vs-plan-execute/</loc>
    <lastmod>2026-04-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/hardware-backed-keys-attestation/</loc>
    <lastmod>2026-04-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-engineering-decomposition/</loc>
    <lastmod>2026-04-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/red-teaming-llm-applications/</loc>
    <lastmod>2026-04-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mtls-service-mesh/</loc>
    <lastmod>2026-04-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gpu-scheduling-llm-inference/</loc>
    <lastmod>2026-04-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-compose-uis-v2/</loc>
    <lastmod>2026-04-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-xr-vs-visionos/</loc>
    <lastmod>2026-04-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-shorebird-code-push/</loc>
    <lastmod>2026-04-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-engineering-anti-patterns/</loc>
    <lastmod>2026-04-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-security-keystore-encrypted-storage/</loc>
    <lastmod>2026-04-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-macros-code-generation/</loc>
    <lastmod>2026-04-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/progressive-web-apps-push-notifications/</loc>
    <lastmod>2026-04-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/workmanager-reliable-background-work/</loc>
    <lastmod>2026-04-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/modbus-industrial-gateways/</loc>
    <lastmod>2026-04-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-performance-stability-recomposition/</loc>
    <lastmod>2026-04-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-coroutines-flows-turbine/</loc>
    <lastmod>2026-04-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backstage-developer-portals/</loc>
    <lastmod>2026-04-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/progressive-web-apps-offline-service-worker/</loc>
    <lastmod>2026-04-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/hilt-dependency-injection-patterns/</loc>
    <lastmod>2026-04-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-text-autosize-basictext/</loc>
    <lastmod>2026-04-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/privacy-by-design-engineering/</loc>
    <lastmod>2026-04-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/shared-data-layer-room-kmp/</loc>
    <lastmod>2026-04-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-operators-crd/</loc>
    <lastmod>2026-04-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-k2-compiler-migration/</loc>
    <lastmod>2026-04-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/killing-anrs-android-jank/</loc>
    <lastmod>2026-04-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postmortems-blameless-culture/</loc>
    <lastmod>2026-04-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sqlite-on-the-server/</loc>
    <lastmod>2026-04-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/baseline-profiles-android-startup/</loc>
    <lastmod>2026-04-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-power-assert/</loc>
    <lastmod>2026-04-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/faster-gradle-builds/</loc>
    <lastmod>2026-04-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-coroutines-flow-patterns/</loc>
    <lastmod>2026-04-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-vacuum-autovacuum-tuning/</loc>
    <lastmod>2026-04-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/streaming-ssr-suspense/</loc>
    <lastmod>2026-04-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/full-stack-kotlin-ktor-backend/</loc>
    <lastmod>2026-04-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/predictive-back-gestures-android/</loc>
    <lastmod>2026-04-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/migrating-xml-to-compose/</loc>
    <lastmod>2026-04-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-row-level-security-multitenant/</loc>
    <lastmod>2026-04-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/edge-to-edge-android-16/</loc>
    <lastmod>2026-04-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/streaming-ux-patterns-llm-apps/</loc>
    <lastmod>2026-03-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-appfunctions-on-device-mcp/</loc>
    <lastmod>2026-03-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-query-planning-explain-analyze/</loc>
    <lastmod>2026-03-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dependency-confusion-attacks/</loc>
    <lastmod>2026-03-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ai-agent-memory-architectures/</loc>
    <lastmod>2026-03-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-multiplatform-shared-ui/</loc>
    <lastmod>2026-03-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/oauth-pkce-mobile/</loc>
    <lastmod>2026-03-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-partitioning-large-tables/</loc>
    <lastmod>2026-03-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mixture-of-experts-explained/</loc>
    <lastmod>2026-03-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-isolates-heavy-compute/</loc>
    <lastmod>2026-03-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-production-guide/</loc>
    <lastmod>2026-03-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-listen-notify-realtime/</loc>
    <lastmod>2026-03-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-sparkplug-b/</loc>
    <lastmod>2026-03-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-hooks-vs-stateful/</loc>
    <lastmod>2026-03-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-service-mesh-istio-linkerd/</loc>
    <lastmod>2026-03-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-context-parameters/</loc>
    <lastmod>2026-03-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iso-15118-plug-and-charge/</loc>
    <lastmod>2026-03-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-jsonb-indexing-queries/</loc>
    <lastmod>2026-03-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-components-shadow-dom/</loc>
    <lastmod>2026-03-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/navigation-3-jetpack-compose/</loc>
    <lastmod>2026-03-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-macrobenchmark-profiling/</loc>
    <lastmod>2026-03-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-secrets-external-secrets/</loc>
    <lastmod>2026-03-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-components-form-association/</loc>
    <lastmod>2026-03-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/adaptive-layouts-compose-grid-flexbox/</loc>
    <lastmod>2026-03-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-index-strategies-btree-gin/</loc>
    <lastmod>2026-03-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/runtime-security-falco-ebpf/</loc>
    <lastmod>2026-03-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-color-functions-oklch/</loc>
    <lastmod>2026-03-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-photo-picker-media-permissions/</loc>
    <lastmod>2026-03-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-resource-limits-requests/</loc>
    <lastmod>2026-03-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-full-text-search-tsvector/</loc>
    <lastmod>2026-03-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/progressive-delivery-canary-analysis/</loc>
    <lastmod>2026-03-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-accessibility-screen-reader-testing/</loc>
    <lastmod>2026-03-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-credential-manager/</loc>
    <lastmod>2026-03-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/building-reliable-ai-agents/</loc>
    <lastmod>2026-03-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-accessibility-keyboard-navigation/</loc>
    <lastmod>2026-03-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/redis-streams-event-processing/</loc>
    <lastmod>2026-03-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-rbac-service-accounts/</loc>
    <lastmod>2026-03-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/long-context-vs-rag/</loc>
    <lastmod>2026-03-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-connection-pooling-pgbouncer/</loc>
    <lastmod>2026-03-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-accessibility-aria-patterns/</loc>
    <lastmod>2026-03-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-navigation-type-safe-routes/</loc>
    <lastmod>2026-03-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vue-3-composition-api-patterns/</loc>
    <lastmod>2026-03-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/web-components-2026/</loc>
    <lastmod>2026-03-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/choosing-an-embeddings-model/</loc>
    <lastmod>2026-03-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-advisory-locks-patterns/</loc>
    <lastmod>2026-03-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/hybrid-search-bm25-vectors/</loc>
    <lastmod>2026-03-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-pod-security-standards/</loc>
    <lastmod>2026-03-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vector-search-ivf-pq-index/</loc>
    <lastmod>2026-03-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/semantic-caching-llm-apis/</loc>
    <lastmod>2026-03-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/content-security-policy-hardening/</loc>
    <lastmod>2026-03-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vector-search-hnsw-tuning/</loc>
    <lastmod>2026-03-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ai-code-review-in-ci/</loc>
    <lastmod>2026-03-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/post-quantum-tls-hybrid/</loc>
    <lastmod>2026-03-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-pod-autoscaling-hpa-vpa/</loc>
    <lastmod>2026-03-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/synthetic-data-generation-llms/</loc>
    <lastmod>2026-03-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vector-db-sharding-scaling/</loc>
    <lastmod>2026-03-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sigstore-keyless-signing/</loc>
    <lastmod>2026-02-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/platform-engineering-self-service-infra/</loc>
    <lastmod>2026-02-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/speculative-decoding-llm-inference/</loc>
    <lastmod>2026-02-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vector-db-pgvector-postgres/</loc>
    <lastmod>2026-02-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-rlhf-overview/</loc>
    <lastmod>2026-02-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-deep-linking-app-links/</loc>
    <lastmod>2026-02-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-operators-with-kubebuilder/</loc>
    <lastmod>2026-02-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vector-db-filtering-pre-post/</loc>
    <lastmod>2026-02-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/webrtc-data-channels-realtime/</loc>
    <lastmod>2026-02-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-models-in-apps/</loc>
    <lastmod>2026-02-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-multiplatform-resources/</loc>
    <lastmod>2026-02-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-lora-qlora-guide/</loc>
    <lastmod>2026-02-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/platform-engineering-scorecards/</loc>
    <lastmod>2026-02-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-template-literal-types/</loc>
    <lastmod>2026-02-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-smart-charging-profiles/</loc>
    <lastmod>2026-02-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/evaluating-retrieval-metrics-rag/</loc>
    <lastmod>2026-02-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-observability-prometheus/</loc>
    <lastmod>2026-02-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-strict-mode-migration/</loc>
    <lastmod>2026-02-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-glance-widgets/</loc>
    <lastmod>2026-02-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-instruction-tuning/</loc>
    <lastmod>2026-02-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/platform-engineering-golden-paths/</loc>
    <lastmod>2026-02-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-observability-opentelemetry-genai/</loc>
    <lastmod>2026-02-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-satisfies-operator/</loc>
    <lastmod>2026-02-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/incident-management-postmortems/</loc>
    <lastmod>2026-02-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/context-engineering-beyond-prompts/</loc>
    <lastmod>2026-02-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-dpo-preference-optimization/</loc>
    <lastmod>2026-02-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-network-policies/</loc>
    <lastmod>2026-02-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-generics-constraints/</loc>
    <lastmod>2026-02-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-ktor-client/</loc>
    <lastmod>2026-02-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/performance-profiling-flamegraphs/</loc>
    <lastmod>2026-02-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/opentelemetry-collector-pipelines/</loc>
    <lastmod>2026-02-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-discriminated-unions/</loc>
    <lastmod>2026-02-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-dataset-curation/</loc>
    <lastmod>2026-02-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/guardrails-moderation-llm-apps/</loc>
    <lastmod>2026-02-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-shared-element-transitions/</loc>
    <lastmod>2026-02-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-multi-cluster-fleet/</loc>
    <lastmod>2026-02-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/performance-n-plus-one-detection/</loc>
    <lastmod>2026-02-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-conditional-mapped-types/</loc>
    <lastmod>2026-02-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/voice-agents-stt-tts-pipelines/</loc>
    <lastmod>2026-02-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-catastrophic-forgetting/</loc>
    <lastmod>2026-02-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/postgres-logical-replication-cdc/</loc>
    <lastmod>2026-02-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/typescript-branded-types-safety/</loc>
    <lastmod>2026-02-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/jetpack-compose-styles-api/</loc>
    <lastmod>2026-02-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-ai-android-gemini-nano/</loc>
    <lastmod>2026-02-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-logging-loki-fluentbit/</loc>
    <lastmod>2026-02-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/performance-latency-percentiles/</loc>
    <lastmod>2026-02-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/quantizing-llms-int4-gguf/</loc>
    <lastmod>2026-02-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/transformer-attention-explained/</loc>
    <lastmod>2026-02-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/feature-stores-ml/</loc>
    <lastmod>2026-02-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/view-transitions-api/</loc>
    <lastmod>2026-02-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/tokenization-bpe-explained/</loc>
    <lastmod>2026-02-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/using-ai-coding-agents-senior-engineer/</loc>
    <lastmod>2026-02-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/document-parsing-pipelines-rag/</loc>
    <lastmod>2026-02-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/performance-caching-layers-strategy/</loc>
    <lastmod>2026-02-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/event-sourcing-projections-read-models/</loc>
    <lastmod>2026-02-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-karpenter-node-autoscaling/</loc>
    <lastmod>2026-02-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/structured-outputs-function-calling/</loc>
    <lastmod>2026-02-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/timeseries-prometheus-remote-write/</loc>
    <lastmod>2026-02-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/csrf-cors-modern-web/</loc>
    <lastmod>2026-02-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/cutting-llm-costs-caching-routing-batching/</loc>
    <lastmod>2026-02-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/timeseries-influxdb-vs-timescale/</loc>
    <lastmod>2026-02-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/event-sourcing-fundamentals/</loc>
    <lastmod>2026-02-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphrag-knowledge-graphs/</loc>
    <lastmod>2026-02-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/passwordless-magic-links/</loc>
    <lastmod>2026-02-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-ingress-controllers/</loc>
    <lastmod>2026-02-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/timeseries-downsampling-retention/</loc>
    <lastmod>2026-02-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vex-vulnerability-triage-sbom/</loc>
    <lastmod>2026-02-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kv-cache-optimization-llm-serving/</loc>
    <lastmod>2026-01-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ev-vehicle-to-grid-v2g/</loc>
    <lastmod>2026-01-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-golden-tests/</loc>
    <lastmod>2026-01-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/passkeys-vs-passwords-migration/</loc>
    <lastmod>2026-01-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/threat-modeling-data-flow-diagrams/</loc>
    <lastmod>2026-01-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/vector-databases-in-production/</loc>
    <lastmod>2026-01-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-helm-vs-kustomize/</loc>
    <lastmod>2026-01-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/time-series-databases-iot/</loc>
    <lastmod>2026-01-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-16kb-page-sizes/</loc>
    <lastmod>2026-01-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ev-fleet-depot-charging/</loc>
    <lastmod>2026-01-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/owasp-top-10-2025/</loc>
    <lastmod>2026-01-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/load-testing-with-k6/</loc>
    <lastmod>2026-01-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-vitest-react-testing-library/</loc>
    <lastmod>2026-01-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/small-language-models-on-mobile/</loc>
    <lastmod>2026-01-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ev-charging-roaming-ocpi/</loc>
    <lastmod>2026-01-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gradle-version-catalogs/</loc>
    <lastmod>2026-01-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-gateway-api/</loc>
    <lastmod>2026-01-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dora-metrics-that-matter/</loc>
    <lastmod>2026-01-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-terraform-policy-sentinel-opa/</loc>
    <lastmod>2026-01-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fine-tuning-vs-rag-vs-prompting/</loc>
    <lastmod>2026-01-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/refactoring-legacy-code-safely/</loc>
    <lastmod>2026-01-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-unit-vs-integration-balance/</loc>
    <lastmod>2026-01-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-privacy-sandbox/</loc>
    <lastmod>2026-01-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ev-charging-plug-and-charge-pki/</loc>
    <lastmod>2026-01-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-crossplane-control-plane/</loc>
    <lastmod>2026-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-secrets-sops-age-encryption/</loc>
    <lastmod>2026-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-injection-agent-security/</loc>
    <lastmod>2026-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/redis-rate-limiting-sliding-window/</loc>
    <lastmod>2026-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/saga-pattern-distributed-transactions/</loc>
    <lastmod>2026-01-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ev-charging-payment-integration/</loc>
    <lastmod>2026-01-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-evals-measuring-agent-quality/</loc>
    <lastmod>2026-01-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/redis-pub-sub-vs-streams/</loc>
    <lastmod>2026-01-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-test-doubles-mocks-stubs/</loc>
    <lastmod>2026-01-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-per-app-language/</loc>
    <lastmod>2026-01-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/connection-pooling-serverless-databases/</loc>
    <lastmod>2026-01-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ktor-websockets-realtime/</loc>
    <lastmod>2026-01-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-rollback-strategies-safe/</loc>
    <lastmod>2026-01-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/redis-distributed-locks-redlock/</loc>
    <lastmod>2026-01-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ev-charging-iso-15118-20/</loc>
    <lastmod>2026-01-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/running-local-llms-on-device/</loc>
    <lastmod>2026-01-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/eval-driven-development-llm/</loc>
    <lastmod>2026-01-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/redis-data-structures-use-cases/</loc>
    <lastmod>2026-01-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-test-data-builders/</loc>
    <lastmod>2026-01-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-progressive-delivery-flagger/</loc>
    <lastmod>2026-01-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-in-production-chunking-reranking-evals/</loc>
    <lastmod>2026-01-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/etl-vs-elt-pipelines/</loc>
    <lastmod>2026-01-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/islands-architecture-astro/</loc>
    <lastmod>2026-01-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ktor-server-plugins-pipeline/</loc>
    <lastmod>2026-01-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/redis-caching-patterns-cache-aside/</loc>
    <lastmod>2026-01-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agent-to-agent-a2a-protocol-explained/</loc>
    <lastmod>2026-01-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embedding-drift-monitoring/</loc>
    <lastmod>2026-01-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/realtime-protocols-sse-vs-websocket/</loc>
    <lastmod>2026-01-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-snapshot-testing-tradeoffs/</loc>
    <lastmod>2026-01-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/building-an-llm-router/</loc>
    <lastmod>2026-01-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/engineering-technical-leadership/</loc>
    <lastmod>2026-01-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-feature-flag-driven-releases/</loc>
    <lastmod>2026-01-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/threat-modeling-stride/</loc>
    <lastmod>2026-01-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ktor-authentication-jwt/</loc>
    <lastmod>2026-01-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multi-agent-orchestration-orchestrator-workers/</loc>
    <lastmod>2026-01-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/realtime-presence-systems/</loc>
    <lastmod>2026-01-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/agentic-rag-self-correcting-retrieval/</loc>
    <lastmod>2026-01-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-accessibility-guide/</loc>
    <lastmod>2026-01-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/building-an-mcp-server-practical-guide/</loc>
    <lastmod>2026-01-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/engineering-tech-debt-prioritization/</loc>
    <lastmod>2026-01-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-database-migrations-zero-downtime/</loc>
    <lastmod>2026-01-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/realtime-collaborative-editing-crdt/</loc>
    <lastmod>2026-01-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-property-based-testing/</loc>
    <lastmod>2026-01-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-serialization-polymorphic/</loc>
    <lastmod>2026-01-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-use-hook-promises/</loc>
    <lastmod>2026-01-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/engineering-onboarding-ramp-up/</loc>
    <lastmod>2026-01-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-cost-anomaly-detection/</loc>
    <lastmod>2026-01-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-suspense-streaming-patterns/</loc>
    <lastmod>2026-01-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-playwright-e2e/</loc>
    <lastmod>2026-01-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/engineering-estimation-story-points/</loc>
    <lastmod>2025-12-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-result-type-error-handling/</loc>
    <lastmod>2025-12-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-blue-green-vs-canary/</loc>
    <lastmod>2025-12-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-mutation-testing/</loc>
    <lastmod>2025-12-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/engineering-career-senior-to-staff/</loc>
    <lastmod>2025-12-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-reflection-costs-alternatives/</loc>
    <lastmod>2025-12-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-autoscaling-predictive-scheduled/</loc>
    <lastmod>2025-12-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-flaky-tests-root-causes/</loc>
    <lastmod>2025-12-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/end-to-end-encryption-design/</loc>
    <lastmod>2025-12-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-viewmodel-shared/</loc>
    <lastmod>2025-12-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ops-argocd-app-of-apps/</loc>
    <lastmod>2025-12-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/encryption-in-transit-tls13/</loc>
    <lastmod>2025-12-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/testing-contract-testing-microservices/</loc>
    <lastmod>2025-12-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/encryption-at-rest-envelope/</loc>
    <lastmod>2025-12-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-dependency-injection/</loc>
    <lastmod>2025-12-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-llm-quantization-mobile/</loc>
    <lastmod>2025-12-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/terraform-workspaces-environments/</loc>
    <lastmod>2025-12-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embeddings-multilingual-cross-lingual/</loc>
    <lastmod>2025-12-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-llm-mlc-mobile/</loc>
    <lastmod>2025-12-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-compose-resources/</loc>
    <lastmod>2025-12-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/terraform-state-management-backends/</loc>
    <lastmod>2025-12-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embeddings-matryoshka-representation/</loc>
    <lastmod>2025-12-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-immutable-collections-kotlinx/</loc>
    <lastmod>2025-12-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embeddings-image-multimodal-clip/</loc>
    <lastmod>2025-12-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/terraform-modules-composition/</loc>
    <lastmod>2025-12-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embeddings-fine-tuning-domain/</loc>
    <lastmod>2025-12-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-flow-testing-turbine-advanced/</loc>
    <lastmod>2025-12-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/terraform-drift-detection/</loc>
    <lastmod>2025-12-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embeddings-binary-quantization/</loc>
    <lastmod>2025-12-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-datetime-multiplatform/</loc>
    <lastmod>2025-12-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/technical-writing-for-engineers/</loc>
    <lastmod>2025-12-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embedded-rust-no-std/</loc>
    <lastmod>2025-12-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-coroutines-testing-runtest/</loc>
    <lastmod>2025-11-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-video-streaming/</loc>
    <lastmod>2025-11-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embedded-rtos-freertos-tasks/</loc>
    <lastmod>2025-11-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embedded-memory-constrained-design/</loc>
    <lastmod>2025-11-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-contracts-smart-casts/</loc>
    <lastmod>2025-11-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-url-shortener/</loc>
    <lastmod>2025-11-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/embedded-interrupt-handling/</loc>
    <lastmod>2025-11-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-atomicfu-lock-free/</loc>
    <lastmod>2025-11-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-ticketing-booking/</loc>
    <lastmod>2025-11-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/edge-databases-turso-d1/</loc>
    <lastmod>2025-11-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-arrow-functional-error-handling/</loc>
    <lastmod>2025-11-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-search-autocomplete/</loc>
    <lastmod>2025-11-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/edge-computing-cloudflare-workers/</loc>
    <lastmod>2025-11-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/duckdb-analytics-in-process/</loc>
    <lastmod>2025-11-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-annotation-processing-vs-ksp/</loc>
    <lastmod>2025-11-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-ride-sharing/</loc>
    <lastmod>2025-11-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-transaction-lifecycle/</loc>
    <lastmod>2025-11-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/documentation-as-code/</loc>
    <lastmod>2025-11-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/key-management-kms-hsm/</loc>
    <lastmod>2025-11-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-rate-limiter/</loc>
    <lastmod>2025-11-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-security-profiles-tls/</loc>
    <lastmod>2025-11-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/docker-multi-stage-builds/</loc>
    <lastmod>2025-11-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kafka-streams-stateful-processing/</loc>
    <lastmod>2025-11-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-reservation-authorization/</loc>
    <lastmod>2025-11-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-payment-system/</loc>
    <lastmod>2025-11-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/docker-image-layer-optimization/</loc>
    <lastmod>2025-11-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-metervalues-sampled-data/</loc>
    <lastmod>2025-11-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/docker-distroless-images/</loc>
    <lastmod>2025-11-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kafka-schema-registry-avro/</loc>
    <lastmod>2025-11-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-notification-system/</loc>
    <lastmod>2025-11-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-local-controller-offline/</loc>
    <lastmod>2025-10-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-news-feed/</loc>
    <lastmod>2025-10-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kafka-partitioning-key-design/</loc>
    <lastmod>2025-10-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/docker-buildkit-cache-mounts/</loc>
    <lastmod>2025-10-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-load-balancing-smart-charging/</loc>
    <lastmod>2025-10-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-metrics-monitoring/</loc>
    <lastmod>2025-10-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dns-anycast-load-balancing/</loc>
    <lastmod>2025-10-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kafka-exactly-once-semantics/</loc>
    <lastmod>2025-10-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-firmware-update-management/</loc>
    <lastmod>2025-10-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-transactions-2pc-saga/</loc>
    <lastmod>2025-10-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ocpp-2-0-1-device-model/</loc>
    <lastmod>2025-10-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-file-storage-dropbox/</loc>
    <lastmod>2025-10-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kafka-consumer-groups-rebalancing/</loc>
    <lastmod>2025-10-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-leader-election-patterns/</loc>
    <lastmod>2025-10-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-three-pillars/</loc>
    <lastmod>2025-10-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-ecommerce-checkout/</loc>
    <lastmod>2025-10-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kafka-connect-pipelines/</loc>
    <lastmod>2025-10-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-eventual-consistency-patterns/</loc>
    <lastmod>2025-10-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-structured-logging/</loc>
    <lastmod>2025-10-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-distributed-cache/</loc>
    <lastmod>2025-10-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-consistent-hashing/</loc>
    <lastmod>2025-10-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-slis-slos-error-budgets/</loc>
    <lastmod>2025-10-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-consensus-raft-explained/</loc>
    <lastmod>2025-10-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-metrics-cardinality/</loc>
    <lastmod>2025-10-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/system-design-chat-messaging/</loc>
    <lastmod>2025-10-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-clocks-vector-timestamps/</loc>
    <lastmod>2025-10-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-exemplars-traces-metrics/</loc>
    <lastmod>2025-10-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/svelte-5-runes-reactivity/</loc>
    <lastmod>2025-10-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/distributed-cap-theorem-pacelc/</loc>
    <lastmod>2025-10-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-distributed-tracing-otel/</loc>
    <lastmod>2025-10-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/supply-chain-provenance-slsa/</loc>
    <lastmod>2025-10-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/disaster-recovery-rpo-rto/</loc>
    <lastmod>2025-09-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-continuous-profiling/</loc>
    <lastmod>2025-09-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/supply-chain-dependency-pinning/</loc>
    <lastmod>2025-09-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/diffusion-models-how-they-work/</loc>
    <lastmod>2025-09-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/observability-alerting-on-symptoms/</loc>
    <lastmod>2025-09-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/jwt-vs-paseto-tokens/</loc>
    <lastmod>2025-09-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/differential-privacy-basics/</loc>
    <lastmod>2025-09-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/oauth2-token-introspection-revocation/</loc>
    <lastmod>2025-09-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/streaming-analytics-flink/</loc>
    <lastmod>2025-09-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/jwt-security-best-practices/</loc>
    <lastmod>2025-09-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dbt-transformations-testing/</loc>
    <lastmod>2025-09-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/oauth2-device-flow-tv/</loc>
    <lastmod>2025-09-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-zigbee-thread-matter/</loc>
    <lastmod>2025-09-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/state-management-zustand-jotai/</loc>
    <lastmod>2025-09-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-uuid-vs-autoincrement-keys/</loc>
    <lastmod>2025-09-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/oauth2-client-credentials-m2m/</loc>
    <lastmod>2025-09-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-time-series-ingestion/</loc>
    <lastmod>2025-09-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ssrf-prevention-defense/</loc>
    <lastmod>2025-09-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-time-series-partitioning/</loc>
    <lastmod>2025-09-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/oauth2-authorization-code-flow/</loc>
    <lastmod>2025-09-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-telemetry-protobuf-compression/</loc>
    <lastmod>2025-09-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-soft-delete-patterns/</loc>
    <lastmod>2025-09-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/node-worker-threads-cpu/</loc>
    <lastmod>2025-09-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sql-injection-prevention-modern/</loc>
    <lastmod>2025-09-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-sensor-calibration-drift/</loc>
    <lastmod>2025-09-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-sharding-strategies/</loc>
    <lastmod>2025-09-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/node-streams-backpressure/</loc>
    <lastmod>2025-09-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-realtime-clock-sync-ptp/</loc>
    <lastmod>2025-09-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-topic-design-patterns/</loc>
    <lastmod>2025-09-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/spring-boot-vs-ktor-2026/</loc>
    <lastmod>2025-09-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-read-replicas-consistency/</loc>
    <lastmod>2025-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/node-cluster-scaling/</loc>
    <lastmod>2025-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-power-management-battery/</loc>
    <lastmod>2025-09-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/solidjs-fine-grained-reactivity/</loc>
    <lastmod>2025-09-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-optimistic-vs-pessimistic-locking/</loc>
    <lastmod>2025-09-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/nextjs-middleware-edge-runtime/</loc>
    <lastmod>2025-09-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-ota-updates-rollback/</loc>
    <lastmod>2025-09-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-vertical-slice-architecture/</loc>
    <lastmod>2025-09-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-migration-expand-contract/</loc>
    <lastmod>2025-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/nextjs-metadata-seo-api/</loc>
    <lastmod>2025-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-modular-monolith-boundaries/</loc>
    <lastmod>2025-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-opc-ua-industrial/</loc>
    <lastmod>2025-08-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-isolation-levels-explained/</loc>
    <lastmod>2025-08-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/nextjs-image-optimization/</loc>
    <lastmod>2025-08-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-hexagonal-ports-adapters/</loc>
    <lastmod>2025-08-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-ocpp-cluster-scaling-websocket/</loc>
    <lastmod>2025-08-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-engineering-role-persona/</loc>
    <lastmod>2025-08-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-deadlock-detection-prevention/</loc>
    <lastmod>2025-08-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/nextjs-caching-revalidation/</loc>
    <lastmod>2025-08-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-feature-toggles-lifecycle/</loc>
    <lastmod>2025-08-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-mqtt-sparkplug-scada/</loc>
    <lastmod>2025-08-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-llm-mediapipe-llm-inference/</loc>
    <lastmod>2025-08-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/database-cdc-debezium-kafka/</loc>
    <lastmod>2025-08-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/nextjs-app-router-server-actions/</loc>
    <lastmod>2025-08-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-event-storming-workshops/</loc>
    <lastmod>2025-08-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-modbus-tcp-rtu/</loc>
    <lastmod>2025-08-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-llm-llama-cpp-mobile/</loc>
    <lastmod>2025-08-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-warehouse-star-schema/</loc>
    <lastmod>2025-08-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-vision-language-models/</loc>
    <lastmod>2025-08-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-domain-driven-design-tactical/</loc>
    <lastmod>2025-08-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-mesh-networking-bluetooth/</loc>
    <lastmod>2025-08-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/on-device-embeddings-mobile-search/</loc>
    <lastmod>2025-08-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-warehouse-cost-optimization/</loc>
    <lastmod>2025-08-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-text-to-speech-neural/</loc>
    <lastmod>2025-08-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-matter-smart-home/</loc>
    <lastmod>2025-08-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-domain-driven-design-strategic/</loc>
    <lastmod>2025-08-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/olap-vs-oltp-workloads/</loc>
    <lastmod>2025-08-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-vault-modeling/</loc>
    <lastmod>2025-08-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-realtime-voice-api/</loc>
    <lastmod>2025-08-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-lorawan-low-power-wan/</loc>
    <lastmod>2025-08-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-cqrs-event-sourcing-tradeoffs/</loc>
    <lastmod>2025-08-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-streaming-exactly-once-flink/</loc>
    <lastmod>2025-08-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-image-generation-apis/</loc>
    <lastmod>2025-08-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-firmware-signing-secure-boot/</loc>
    <lastmod>2025-08-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/oidc-openid-connect-explained/</loc>
    <lastmod>2025-08-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-reverse-etl-operational/</loc>
    <lastmod>2025-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-document-understanding/</loc>
    <lastmod>2025-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-architecture-decision-records/</loc>
    <lastmod>2025-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-ev-charging-analytics-pipeline/</loc>
    <lastmod>2025-08-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-quality-great-expectations/</loc>
    <lastmod>2025-08-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/multimodal-audio-transcription-whisper/</loc>
    <lastmod>2025-08-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-edge-ml-tinyml/</loc>
    <lastmod>2025-08-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/software-anti-corruption-layer/</loc>
    <lastmod>2025-08-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-tls-authentication-iot/</loc>
    <lastmod>2025-08-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-partitioning-bucketing/</loc>
    <lastmod>2025-08-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mtls-mutual-authentication/</loc>
    <lastmod>2025-08-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-edge-gateway-protocols/</loc>
    <lastmod>2025-07-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/session-management-secure-cookies/</loc>
    <lastmod>2025-07-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-orchestration-airflow-dagster/</loc>
    <lastmod>2025-07-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-edge-buffering-store-forward/</loc>
    <lastmod>2025-07-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-retained-messages-last-will/</loc>
    <lastmod>2025-07-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-modeling-slowly-changing-dimensions/</loc>
    <lastmod>2025-07-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/serverless-step-functions-orchestration/</loc>
    <lastmod>2025-07-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-device-shadow-twin/</loc>
    <lastmod>2025-07-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-qos-levels-explained/</loc>
    <lastmod>2025-07-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-mesh-domain-ownership/</loc>
    <lastmod>2025-07-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-device-provisioning-fleet/</loc>
    <lastmod>2025-07-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/serverless-event-driven-architecture/</loc>
    <lastmod>2025-07-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mqtt-bridging-clustering/</loc>
    <lastmod>2025-07-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-lineage-tracking/</loc>
    <lastmod>2025-07-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-device-authentication-x509/</loc>
    <lastmod>2025-07-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/serverless-database-access-patterns/</loc>
    <lastmod>2025-07-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-lakehouse-iceberg/</loc>
    <lastmod>2025-07-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-charging-session-reconciliation/</loc>
    <lastmod>2025-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/model-distillation-smaller-faster/</loc>
    <lastmod>2025-07-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-incremental-models-dbt/</loc>
    <lastmod>2025-07-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/serverless-cold-starts-mitigation/</loc>
    <lastmod>2025-07-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-can-opener-diagnostics/</loc>
    <lastmod>2025-07-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/model-context-protocol-vs-function-calling/</loc>
    <lastmod>2025-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-contracts-schema-enforcement/</loc>
    <lastmod>2025-07-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iot-can-bus-automotive/</loc>
    <lastmod>2025-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/security-logging-audit-trails/</loc>
    <lastmod>2025-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mobile-reverse-engineering-defense/</loc>
    <lastmod>2025-07-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-catalog-discovery/</loc>
    <lastmod>2025-07-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/incident-response-oncall-rotations/</loc>
    <lastmod>2025-07-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/security-headers-hardening/</loc>
    <lastmod>2025-07-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/data-anonymization-pseudonymization/</loc>
    <lastmod>2025-07-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/incident-response-forensics/</loc>
    <lastmod>2025-07-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-sealed-classes-exhaustive-switch/</loc>
    <lastmod>2025-07-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/secrets-rotation-automation/</loc>
    <lastmod>2025-07-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/iac-security-scanning-checkov/</loc>
    <lastmod>2025-07-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mobile-app-security-owasp-masvs/</loc>
    <lastmod>2025-06-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/grpc-streaming-bidirectional/</loc>
    <lastmod>2025-06-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/secrets-management-vault/</loc>
    <lastmod>2025-06-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-pattern-matching-destructuring/</loc>
    <lastmod>2025-06-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/grpc-interceptors-middleware/</loc>
    <lastmod>2025-06-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ml-model-serving-inference/</loc>
    <lastmod>2025-06-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/secret-detection-gitleaks/</loc>
    <lastmod>2025-06-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-null-safety-sound-migration/</loc>
    <lastmod>2025-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/grpc-error-handling-status-codes/</loc>
    <lastmod>2025-06-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/microservices-strangler-fig-migration/</loc>
    <lastmod>2025-06-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-mixins-composition/</loc>
    <lastmod>2025-06-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-webauthn-attestation-verification/</loc>
    <lastmod>2025-06-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/grpc-deadlines-cancellation/</loc>
    <lastmod>2025-06-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-isolate-groups-shared-memory/</loc>
    <lastmod>2025-06-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/microservices-service-discovery/</loc>
    <lastmod>2025-06-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphql-subscriptions-realtime/</loc>
    <lastmod>2025-06-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-tls-certificate-automation-acme/</loc>
    <lastmod>2025-06-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-extension-types-zero-cost/</loc>
    <lastmod>2025-06-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphql-schema-design-best-practices/</loc>
    <lastmod>2025-06-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/microservices-distributed-tracing/</loc>
    <lastmod>2025-06-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-secure-defaults-frameworks/</loc>
    <lastmod>2025-06-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-async-streams-patterns/</loc>
    <lastmod>2025-06-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphql-persisted-queries-security/</loc>
    <lastmod>2025-06-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/microservices-contract-testing-pact/</loc>
    <lastmod>2025-06-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/dart-3-class-modifiers/</loc>
    <lastmod>2025-06-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-rate-limit-ddos-defense/</loc>
    <lastmod>2025-06-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphql-pagination-cursor-relay/</loc>
    <lastmod>2025-06-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-view-transitions-spa/</loc>
    <lastmod>2025-06-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/microservices-circuit-breaker-resilience/</loc>
    <lastmod>2025-06-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/graphql-n-plus-one-dataloader/</loc>
    <lastmod>2025-06-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-oauth-pkce-spa/</loc>
    <lastmod>2025-06-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-subgrid-layouts/</loc>
    <lastmod>2025-06-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gradle-dependency-analysis-plugin/</loc>
    <lastmod>2025-06-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/microservices-api-composition/</loc>
    <lastmod>2025-06-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-logging-sensitive-data-leaks/</loc>
    <lastmod>2025-05-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-scroll-driven-animations/</loc>
    <lastmod>2025-05-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mfa-totp-implementation/</loc>
    <lastmod>2025-05-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-nesting-native/</loc>
    <lastmod>2025-05-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-jwt-key-rotation-jwks/</loc>
    <lastmod>2025-05-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-has-selector-patterns/</loc>
    <lastmod>2025-05-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/message-queues-sqs-vs-kafka/</loc>
    <lastmod>2025-05-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-input-validation-allowlisting/</loc>
    <lastmod>2025-05-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-container-queries/</loc>
    <lastmod>2025-05-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/message-queue-dead-letter-handling/</loc>
    <lastmod>2025-05-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-dependency-audit-automation/</loc>
    <lastmod>2025-05-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-cascade-layers/</loc>
    <lastmod>2025-05-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-transport-stdio-http-sse/</loc>
    <lastmod>2025-05-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/css-anchor-positioning/</loc>
    <lastmod>2025-05-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sec-api-keys-vs-oauth/</loc>
    <lastmod>2025-05-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/go-generics-in-practice/</loc>
    <lastmod>2025-05-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/csrf-samesite-tokens/</loc>
    <lastmod>2025-05-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-server-testing-inspector/</loc>
    <lastmod>2025-05-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sbom-generation-cyclonedx/</loc>
    <lastmod>2025-05-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/go-error-handling-wrapping/</loc>
    <lastmod>2025-05-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/cqrs-command-query-separation/</loc>
    <lastmod>2025-05-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-server-authentication-oauth/</loc>
    <lastmod>2025-05-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/go-context-cancellation-timeouts/</loc>
    <lastmod>2025-05-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/sast-dast-in-pipelines/</loc>
    <lastmod>2025-05-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/containers-oci-runtime-internals/</loc>
    <lastmod>2025-05-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/go-concurrency-goroutines-channels/</loc>
    <lastmod>2025-05-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-security-tool-poisoning/</loc>
    <lastmod>2025-05-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/container-scanning-trivy-grype/</loc>
    <lastmod>2025-05-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rust-ownership-borrowing-explained/</loc>
    <lastmod>2025-05-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/git-workflows-trunk-based/</loc>
    <lastmod>2025-05-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/consent-management-platforms/</loc>
    <lastmod>2025-04-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-sampling-elicitation/</loc>
    <lastmod>2025-04-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rust-error-handling-result-anyhow/</loc>
    <lastmod>2025-04-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/git-rebase-vs-merge/</loc>
    <lastmod>2025-04-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/concurrency-lock-free-data-structures/</loc>
    <lastmod>2025-04-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-resources-vs-tools-vs-prompts/</loc>
    <lastmod>2025-04-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/git-monorepo-vs-polyrepo/</loc>
    <lastmod>2025-04-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rust-async-tokio-runtime/</loc>
    <lastmod>2025-04-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/concurrency-backpressure-strategies/</loc>
    <lastmod>2025-04-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/git-commit-conventions/</loc>
    <lastmod>2025-04-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/mcp-remote-servers-deployment/</loc>
    <lastmod>2025-04-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/concurrency-actor-model/</loc>
    <lastmod>2025-04-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rest-api-pagination-filtering-sorting/</loc>
    <lastmod>2025-04-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gdpr-data-subject-requests/</loc>
    <lastmod>2025-04-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-text-field-state-2026/</loc>
    <lastmod>2025-04-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/load-balancing-algorithms-l4-l7/</loc>
    <lastmod>2025-04-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rest-api-idempotency-keys/</loc>
    <lastmod>2025-04-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/fuzzing-security-testing/</loc>
    <lastmod>2025-04-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-swipe-to-dismiss-actions/</loc>
    <lastmod>2025-04-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-tree-of-thoughts-search/</loc>
    <lastmod>2025-04-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/frontend-micro-frontends-module-federation/</loc>
    <lastmod>2025-04-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rest-api-hateoas-hypermedia/</loc>
    <lastmod>2025-04-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-subcompose-layout-patterns/</loc>
    <lastmod>2025-04-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/frontend-design-tokens-theming/</loc>
    <lastmod>2025-04-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-translation-quality-evaluation/</loc>
    <lastmod>2025-04-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-pager-carousel-patterns/</loc>
    <lastmod>2025-04-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rest-api-error-responses-rfc9457/</loc>
    <lastmod>2025-04-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/forms-validation-zod-react-hook-form/</loc>
    <lastmod>2025-04-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-nested-scroll-connection/</loc>
    <lastmod>2025-04-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-token-budgeting-strategies/</loc>
    <lastmod>2025-04-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rest-api-design-richardson-maturity/</loc>
    <lastmod>2025-04-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-workmanager-background-tasks/</loc>
    <lastmod>2025-04-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-multiplatform-navigation/</loc>
    <lastmod>2025-04-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-temperature-sampling-explained/</loc>
    <lastmod>2025-04-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-webview-inappwebview/</loc>
    <lastmod>2025-04-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/refactoring-strangler-approach/</loc>
    <lastmod>2025-04-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-focus-management-tv/</loc>
    <lastmod>2025-03-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-web-seo-strategies/</loc>
    <lastmod>2025-03-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-summarization-long-documents/</loc>
    <lastmod>2025-03-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-drag-and-drop-reorder/</loc>
    <lastmod>2025-03-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-web-canvaskit-vs-html/</loc>
    <lastmod>2025-03-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-custom-layout-measure-policy/</loc>
    <lastmod>2025-03-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-structured-extraction-pipelines/</loc>
    <lastmod>2025-03-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-theming-material3-dynamic/</loc>
    <lastmod>2025-03-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-autofill-integration/</loc>
    <lastmod>2025-03-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-paged-attention/</loc>
    <lastmod>2025-03-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-sql-generation-text-to-sql/</loc>
    <lastmod>2025-03-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-theme-extensions-custom/</loc>
    <lastmod>2025-03-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/columnar-storage-parquet/</loc>
    <lastmod>2025-03-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-multi-lora-adapters/</loc>
    <lastmod>2025-03-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-testing-widget-tests/</loc>
    <lastmod>2025-03-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-vllm-continuous-batching/</loc>
    <lastmod>2025-03-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/code-review-pull-request-size/</loc>
    <lastmod>2025-03-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-self-consistency-voting/</loc>
    <lastmod>2025-03-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-shaders-fragment-programs/</loc>
    <lastmod>2025-03-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/code-review-effective-practices/</loc>
    <lastmod>2025-03-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-tensor-parallelism/</loc>
    <lastmod>2025-03-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-safety-pii-redaction/</loc>
    <lastmod>2025-03-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-secure-storage-encryption/</loc>
    <lastmod>2025-03-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/clickhouse-realtime-analytics/</loc>
    <lastmod>2025-03-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-safety-output-filtering/</loc>
    <lastmod>2025-03-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-structured-output-outlines/</loc>
    <lastmod>2025-03-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-riverpod-testing-overrides/</loc>
    <lastmod>2025-03-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ci-cd-secrets-oidc-keyless/</loc>
    <lastmod>2025-03-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-safety-jailbreak-defense/</loc>
    <lastmod>2025-03-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-riverpod-async-notifier/</loc>
    <lastmod>2025-03-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-speculative-decoding-draft/</loc>
    <lastmod>2025-03-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ci-cd-monorepo-affected-builds/</loc>
    <lastmod>2025-03-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-quantization-awq-gptq/</loc>
    <lastmod>2025-03-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-riverpod-2-code-generation/</loc>
    <lastmod>2025-03-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ci-cd-matrix-builds-caching/</loc>
    <lastmod>2025-03-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-serving-prefix-caching/</loc>
    <lastmod>2025-03-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-rive-interactive-animations/</loc>
    <lastmod>2025-02-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-retrofit-code-gen-networking/</loc>
    <lastmod>2025-02-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-result-pattern-sealed/</loc>
    <lastmod>2025-02-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-server-components-data-fetching/</loc>
    <lastmod>2025-02-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-responsive-adaptive-layouts/</loc>
    <lastmod>2025-02-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-memoization-compiler/</loc>
    <lastmod>2025-02-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-repaint-boundary-optimization/</loc>
    <lastmod>2025-02-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-error-boundaries-patterns/</loc>
    <lastmod>2025-02-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ci-cd-github-actions-reusable-workflows/</loc>
    <lastmod>2025-02-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-rebuild-optimization-const/</loc>
    <lastmod>2025-02-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-push-notifications-fcm/</loc>
    <lastmod>2025-02-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-concurrent-rendering-transitions/</loc>
    <lastmod>2025-02-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ci-cd-deployment-strategies-blue-green/</loc>
    <lastmod>2025-02-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-plugin-federated-architecture/</loc>
    <lastmod>2025-02-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/react-19-actions-form-status/</loc>
    <lastmod>2025-02-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-maps-integration-patterns/</loc>
    <lastmod>2025-02-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-platform-views-native-embedding/</loc>
    <lastmod>2025-02-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/ci-cd-artifact-management/</loc>
    <lastmod>2025-02-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rbac-vs-abac-authorization/</loc>
    <lastmod>2025-02-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-performance-devtools/</loc>
    <lastmod>2025-01-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/chaos-engineering-game-days/</loc>
    <lastmod>2025-01-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-package-publishing-pub-dev/</loc>
    <lastmod>2025-01-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rate-limiting-abuse-prevention/</loc>
    <lastmod>2025-01-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-objectbox-performance/</loc>
    <lastmod>2025-01-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-table-extraction-documents/</loc>
    <lastmod>2025-01-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/cdn-caching-strategies-edge/</loc>
    <lastmod>2025-01-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-mocktail-mocking/</loc>
    <lastmod>2025-01-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-reranking-cross-encoders/</loc>
    <lastmod>2025-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-method-channels-vs-pigeon/</loc>
    <lastmod>2025-01-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/cdc-streaming-to-warehouse/</loc>
    <lastmod>2025-01-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-melos-monorepo-management/</loc>
    <lastmod>2025-01-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-query-rewriting-expansion/</loc>
    <lastmod>2025-01-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/career-writing-design-docs/</loc>
    <lastmod>2025-01-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-parent-document-retrieval/</loc>
    <lastmod>2025-01-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/career-running-effective-meetings/</loc>
    <lastmod>2025-01-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-safety-content-moderation-pipeline/</loc>
    <lastmod>2025-01-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-multi-vector-colbert/</loc>
    <lastmod>2025-01-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-retry-fallback-strategies/</loc>
    <lastmod>2025-01-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-metadata-filtering-hybrid/</loc>
    <lastmod>2025-01-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/career-mentoring-junior-engineers/</loc>
    <lastmod>2025-01-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-reflection-self-critique/</loc>
    <lastmod>2025-01-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-late-chunking-embeddings/</loc>
    <lastmod>2024-12-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-rate-limits-token-buckets/</loc>
    <lastmod>2024-12-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/career-managing-up-communication/</loc>
    <lastmod>2024-12-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/astro-content-collections/</loc>
    <lastmod>2024-12-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-prompt-versioning-management/</loc>
    <lastmod>2024-12-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-image-multimodal-retrieval/</loc>
    <lastmod>2024-12-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/career-deep-work-focus/</loc>
    <lastmod>2024-12-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-local-notifications/</loc>
    <lastmod>2024-12-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-output-streaming-server-sent-events/</loc>
    <lastmod>2024-12-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-hypothetical-document-embeddings/</loc>
    <lastmod>2024-12-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-lazy-loading-lists-pagination/</loc>
    <lastmod>2024-12-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-observability-cost-dashboards/</loc>
    <lastmod>2024-12-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/bot-detection-mitigation/</loc>
    <lastmod>2024-12-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-hybrid-reranking-fusion/</loc>
    <lastmod>2024-12-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-l10n-internationalization/</loc>
    <lastmod>2024-12-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-logit-bias-steering/</loc>
    <lastmod>2024-12-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-keyboard-focus-management/</loc>
    <lastmod>2024-12-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-knowledge-graph-extraction/</loc>
    <lastmod>2024-12-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-graph-rag-vs-vector/</loc>
    <lastmod>2024-12-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-payment-idempotency-ledgers/</loc>
    <lastmod>2024-12-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/background-jobs-queue-workers/</loc>
    <lastmod>2024-12-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-json-serialization-codegen/</loc>
    <lastmod>2024-12-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-json-mode-schema-validation/</loc>
    <lastmod>2024-12-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-freshness-incremental-indexing/</loc>
    <lastmod>2024-12-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/background-jobs-priority-fairness/</loc>
    <lastmod>2024-12-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-isolates-compute-patterns/</loc>
    <lastmod>2024-12-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-hallucination-detection-mitigation/</loc>
    <lastmod>2024-12-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-evaluation-ragas-framework/</loc>
    <lastmod>2024-12-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-isar-nosql-database/</loc>
    <lastmod>2024-12-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-function-calling-parallel-tools/</loc>
    <lastmod>2024-12-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/background-jobs-cron-scheduling/</loc>
    <lastmod>2024-12-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-integration-tests-patrol/</loc>
    <lastmod>2024-12-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-few-shot-example-selection/</loc>
    <lastmod>2024-12-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-contextual-retrieval-anthropic/</loc>
    <lastmod>2024-12-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-saga-choreography-orchestration/</loc>
    <lastmod>2024-12-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-injectable-service-locator/</loc>
    <lastmod>2024-11-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-eval-regression-testing-ci/</loc>
    <lastmod>2024-11-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-webhooks-fan-out-delivery/</loc>
    <lastmod>2024-11-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-citation-attribution-grounding/</loc>
    <lastmod>2024-11-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-image-caching-cached-network/</loc>
    <lastmod>2024-11-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-eval-llm-as-judge/</loc>
    <lastmod>2024-11-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-chunking-strategies-compared/</loc>
    <lastmod>2024-11-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-multi-tenancy-data-isolation/</loc>
    <lastmod>2024-11-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-search-opensearch-vector/</loc>
    <lastmod>2024-11-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-hive-vs-shared-preferences/</loc>
    <lastmod>2024-11-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-eval-human-annotation-workflows/</loc>
    <lastmod>2024-11-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-graphql-ferry-artemis/</loc>
    <lastmod>2024-11-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-eval-golden-datasets/</loc>
    <lastmod>2024-11-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-chunk-overlap-tuning/</loc>
    <lastmod>2024-11-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-search-elasticsearch-relevance/</loc>
    <lastmod>2024-11-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-job-scheduling-temporal/</loc>
    <lastmod>2024-11-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-gesture-arena-recognizers/</loc>
    <lastmod>2024-11-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-eval-ab-testing-online/</loc>
    <lastmod>2024-11-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/rag-agentic-retrieval-loops/</loc>
    <lastmod>2024-11-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-freezed-data-classes/</loc>
    <lastmod>2024-11-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-cost-attribution-per-tenant/</loc>
    <lastmod>2024-11-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/qwik-resumability-explained/</loc>
    <lastmod>2024-11-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-graphql-vs-rest-decision/</loc>
    <lastmod>2024-11-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-form-validation-patterns/</loc>
    <lastmod>2024-11-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-context-window-management/</loc>
    <lastmod>2024-11-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-retry-jitter-exponential-backoff/</loc>
    <lastmod>2024-11-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-flavors-build-configuration/</loc>
    <lastmod>2024-11-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-constrained-decoding-grammars/</loc>
    <lastmod>2024-11-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/pulumi-vs-terraform/</loc>
    <lastmod>2024-11-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-ffi-native-libraries/</loc>
    <lastmod>2024-11-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-code-generation-guardrails/</loc>
    <lastmod>2024-11-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/authorization-relationship-based-zanzibar/</loc>
    <lastmod>2024-11-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-engineering-xml-structured/</loc>
    <lastmod>2024-11-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-feature-first-project-structure/</loc>
    <lastmod>2024-11-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-classification-zero-shot/</loc>
    <lastmod>2024-11-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/prompt-engineering-system-prompts/</loc>
    <lastmod>2024-11-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-error-handling-either-dartz/</loc>
    <lastmod>2024-10-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-chain-of-thought-tradeoffs/</loc>
    <lastmod>2024-10-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-outbox-inbox-messaging/</loc>
    <lastmod>2024-10-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-drift-sqlite-orm/</loc>
    <lastmod>2024-10-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-caching-semantic-similarity/</loc>
    <lastmod>2024-10-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-dio-interceptors-retry/</loc>
    <lastmod>2024-10-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-caching-prompt-response/</loc>
    <lastmod>2024-10-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-desktop-windows-macos-linux/</loc>
    <lastmod>2024-10-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-batch-inference-throughput/</loc>
    <lastmod>2024-10-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-hero-animations-advanced/</loc>
    <lastmod>2024-10-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-animation-controller-patterns/</loc>
    <lastmod>2024-10-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-dependency-injection-getit/</loc>
    <lastmod>2024-10-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-app-semantic-router-intents/</loc>
    <lastmod>2024-10-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-implicit-explicit-animations/</loc>
    <lastmod>2024-10-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-custom-multi-child-layout/</loc>
    <lastmod>2024-10-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-deep-links-universal-links-universal/</loc>
    <lastmod>2024-10-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-app-multitenancy-isolation/</loc>
    <lastmod>2024-10-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-idempotent-consumer-pattern/</loc>
    <lastmod>2024-10-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-render-object-widgets/</loc>
    <lastmod>2024-10-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-custom-scroll-physics/</loc>
    <lastmod>2024-10-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-custom-scroll-view-slivers-advanced/</loc>
    <lastmod>2024-10-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-app-feedback-loops-improvement/</loc>
    <lastmod>2024-10-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/backend-feature-flags-server-side/</loc>
    <lastmod>2024-10-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-slivers-custom-scroll/</loc>
    <lastmod>2024-10-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-gorouter-shell-routes/</loc>
    <lastmod>2024-10-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-code-generation-build-runner/</loc>
    <lastmod>2024-10-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-navigator-2-gorouter/</loc>
    <lastmod>2024-10-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-app-conversation-memory-store/</loc>
    <lastmod>2024-10-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-state-restoration/</loc>
    <lastmod>2024-10-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-clean-architecture-layers/</loc>
    <lastmod>2024-10-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-app-architecture-orchestration/</loc>
    <lastmod>2024-10-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-crashlytics-nonfatal-strategy/</loc>
    <lastmod>2024-10-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-anr-cluster-analysis-vitals/</loc>
    <lastmod>2024-10-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-ci-cd-fastlane-codemagic/</loc>
    <lastmod>2024-10-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/llm-agent-planning-decomposition/</loc>
    <lastmod>2024-10-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-tracing-composition-recomposition/</loc>
    <lastmod>2024-10-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-profileinstaller-startup/</loc>
    <lastmod>2024-10-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-canvas-custom-painter/</loc>
    <lastmod>2024-10-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kubernetes-statefulsets-storage/</loc>
    <lastmod>2024-10-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-baseline-profiles-ci/</loc>
    <lastmod>2024-09-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-adaptive-icons-monochrome/</loc>
    <lastmod>2024-09-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-jetpack-glance-appwidgets-state/</loc>
    <lastmod>2024-09-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-bloc-test-package/</loc>
    <lastmod>2024-09-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-scripting-kts-automation/</loc>
    <lastmod>2024-09-27</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-wasm-compose-web/</loc>
    <lastmod>2024-09-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/authorization-policy-engines-opa/</loc>
    <lastmod>2024-09-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-bloc-cubit-testing/</loc>
    <lastmod>2024-09-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-js-interop-basics/</loc>
    <lastmod>2024-09-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-native-memory-model/</loc>
    <lastmod>2024-09-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-biometric-local-auth/</loc>
    <lastmod>2024-09-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-testing-strategy/</loc>
    <lastmod>2024-09-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-cocoapods-spm/</loc>
    <lastmod>2024-09-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-expect-actual-patterns/</loc>
    <lastmod>2024-09-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-scoped-storage-media-store/</loc>
    <lastmod>2024-09-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-background-isolates-plugins/</loc>
    <lastmod>2024-09-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-per-app-language-appcompat/</loc>
    <lastmod>2024-09-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-app-links-verification-debug/</loc>
    <lastmod>2024-09-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-app-size-optimization/</loc>
    <lastmod>2024-09-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-16-adaptive-apps-mandate/</loc>
    <lastmod>2024-09-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-window-manager-embedding-activities/</loc>
    <lastmod>2024-09-15</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-preview-tooling-multipreview/</loc>
    <lastmod>2024-09-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-app-lifecycle-state/</loc>
    <lastmod>2024-09-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-testing-semantics-tree/</loc>
    <lastmod>2024-09-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-wearos-compose-tiles/</loc>
    <lastmod>2024-09-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-gesture-detection-pointerinput/</loc>
    <lastmod>2024-09-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/flutter-accessibility-semantics-widgets/</loc>
    <lastmod>2024-09-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-lookahead-layout-animations/</loc>
    <lastmod>2024-09-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-animated-content-transitions/</loc>
    <lastmod>2024-09-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/finops-tagging-allocation/</loc>
    <lastmod>2024-09-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-wearos-complications/</loc>
    <lastmod>2024-09-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-animation-apis-overview/</loc>
    <lastmod>2024-09-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-bottom-sheet-scaffold/</loc>
    <lastmod>2024-09-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/finops-spot-instances-savings/</loc>
    <lastmod>2024-09-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-pull-to-refresh-material3/</loc>
    <lastmod>2024-09-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-snapshot-state-internals/</loc>
    <lastmod>2024-09-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/finops-cloud-cost-optimization/</loc>
    <lastmod>2024-09-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-tv-leanback-compose/</loc>
    <lastmod>2024-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-derivedstateof-when-to-use/</loc>
    <lastmod>2024-08-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-remember-keys-pitfalls/</loc>
    <lastmod>2024-08-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-side-effects-launchedeffect/</loc>
    <lastmod>2024-08-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-testing-robolectric/</loc>
    <lastmod>2024-08-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/compose-stability-annotations-deep/</loc>
    <lastmod>2024-08-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-localization-rtl-support/</loc>
    <lastmod>2024-08-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-accessibility-talkback-testing/</loc>
    <lastmod>2024-08-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-image-loading-coil3/</loc>
    <lastmod>2024-08-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-strict-null-safety-java-interop/</loc>
    <lastmod>2024-08-21</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-retrofit-error-handling/</loc>
    <lastmod>2024-08-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-okhttp-interceptors-patterns/</loc>
    <lastmod>2024-08-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-network-security-config/</loc>
    <lastmod>2024-08-17</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-certificate-pinning-okhttp/</loc>
    <lastmod>2024-08-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-room-multimap-relations/</loc>
    <lastmod>2024-08-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-root-detection-tampering/</loc>
    <lastmod>2024-08-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gradle-kotlin-dsl-migration/</loc>
    <lastmod>2024-08-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-room-full-text-search-fts/</loc>
    <lastmod>2024-08-11</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gradle-configuration-cache/</loc>
    <lastmod>2024-08-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gradle-build-cache-remote/</loc>
    <lastmod>2024-08-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/gradle-convention-plugins/</loc>
    <lastmod>2024-08-07</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-render-effect-blur/</loc>
    <lastmod>2024-08-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-roborazzi-screenshot-tests/</loc>
    <lastmod>2024-08-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-graphics-layer-compose/</loc>
    <lastmod>2024-08-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-canvas-drawing-compose/</loc>
    <lastmod>2024-08-03</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-lottie-compose-animations/</loc>
    <lastmod>2024-08-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-obfuscation-string-encryption/</loc>
    <lastmod>2024-08-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-material3-adaptive-navigation/</loc>
    <lastmod>2024-07-31</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-dynamic-color-material3/</loc>
    <lastmod>2024-07-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-haptics-vibration-effects/</loc>
    <lastmod>2024-07-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-uwb-ultra-wideband/</loc>
    <lastmod>2024-07-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-nearby-connections-api/</loc>
    <lastmod>2024-07-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-stylus-handwriting-input/</loc>
    <lastmod>2024-07-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-ble-bluetooth-low-energy/</loc>
    <lastmod>2024-07-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-nfc-host-card-emulation/</loc>
    <lastmod>2024-07-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-barcode-scanning-mlkit/</loc>
    <lastmod>2024-07-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-text-recognition-mlkit-ocr/</loc>
    <lastmod>2024-07-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-mlkit-on-device-vision/</loc>
    <lastmod>2024-07-18</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-camerax-video-capture/</loc>
    <lastmod>2024-07-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-camerax-image-analysis/</loc>
    <lastmod>2024-07-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-media3-media-session/</loc>
    <lastmod>2024-07-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-media3-exoplayer-migration/</loc>
    <lastmod>2024-07-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-doze-app-standby-buckets/</loc>
    <lastmod>2024-07-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-exact-alarms-android-14/</loc>
    <lastmod>2024-07-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-notification-runtime-permission/</loc>
    <lastmod>2024-07-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-workmanager-vs-jobscheduler/</loc>
    <lastmod>2024-07-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-biometric-authentication/</loc>
    <lastmod>2024-07-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-play-integrity-api/</loc>
    <lastmod>2024-06-30</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-in-app-review-api/</loc>
    <lastmod>2024-06-29</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-in-app-updates-api/</loc>
    <lastmod>2024-06-28</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-play-asset-delivery/</loc>
    <lastmod>2024-06-26</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-app-bundle-dynamic-features/</loc>
    <lastmod>2024-06-25</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-r8-proguard-optimization/</loc>
    <lastmod>2024-06-24</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-strictmode-debugging/</loc>
    <lastmod>2024-06-23</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-memory-leaks-leakcanary/</loc>
    <lastmod>2024-06-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-jank-frame-metrics-jankstats/</loc>
    <lastmod>2024-06-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/android-startup-tracing-perfetto/</loc>
    <lastmod>2024-06-19</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-compiler-plugins-intro/</loc>
    <lastmod>2024-06-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-symbol-processing-ksp-guide/</loc>
    <lastmod>2024-06-14</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-networking-ktorfit/</loc>
    <lastmod>2024-06-13</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-sqldelight/</loc>
    <lastmod>2024-06-12</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-multiplatform-swiftui-interop/</loc>
    <lastmod>2024-06-10</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-coroutine-dispatchers-deep-dive/</loc>
    <lastmod>2024-06-09</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-structured-concurrency-supervisorjob/</loc>
    <lastmod>2024-06-08</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-coroutine-cancellation-cooperative/</loc>
    <lastmod>2024-06-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-flow-sharein-statein-hot-flows/</loc>
    <lastmod>2024-06-05</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-delegation-by-keyword-patterns/</loc>
    <lastmod>2024-06-04</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-sealed-interfaces-domain-modeling/</loc>
    <lastmod>2024-06-02</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://blog.michaelsam94.com/kotlin-inline-value-classes-performance/</loc>
    <lastmod>2024-06-01</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
</urlset>
