<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Asvanth C — Engineering notes</title>
    <link>https://asvanthc.github.io/</link>
    <atom:link href="https://asvanthc.github.io/rss.xml" rel="self" type="application/rss+xml" />
    <description>Software Engineer at Zeetaminds working across backend systems, identity and access management, digital signage device platforms and web applications — currently going deeper on AI engineering and distributed systems.</description>
    <language>en</language>
    <managingEditor>asvanthc@gmail.com (Asvanth C)</managingEditor>
    <lastBuildDate>Sun, 24 May 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>What changes when software engineering meets AI</title>
      <link>https://asvanthc.github.io/writing/what-changes-when-software-engineering-meets-ai/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/what-changes-when-software-engineering-meets-ai/</guid>
      <description>A backend engineer&apos;s notes on what an LLM really changes in a system: a non-deterministic component with no contract, and the ordinary discipline around it.</description>
      <pubDate>Sun, 24 May 2026 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>AI Engineering</category>
      <category>Architecture</category>
      <category>LLM</category>
    </item>
    <item>
      <title>Designing IAM as a separate domain</title>
      <link>https://asvanthc.github.io/writing/designing-iam-as-a-separate-domain/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/designing-iam-as-a-separate-domain/</guid>
      <description>Identity needs its own domain boundary: authentication decisions leak into state, session lifetime and service trust, so scattering them erases your trust boundaries</description>
      <pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>Identity</category>
      <category>Architecture</category>
      <category>Security</category>
    </item>
    <item>
      <title>Debugging production: start with evidence</title>
      <link>https://asvanthc.github.io/writing/debugging-production-start-with-evidence/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/debugging-production-start-with-evidence/</guid>
      <description>A procedure for debugging production systems, where the expensive failure mode is not being wrong but being confident and wrong before you have gathered anything.</description>
      <pubDate>Sun, 18 Jan 2026 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>Debugging</category>
      <category>Production</category>
      <category>Observability</category>
    </item>
    <item>
      <title>Building one application across Samsung Tizen, LG webOS and Android</title>
      <link>https://asvanthc.github.io/writing/building-across-tizen-webos-and-android/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/building-across-tizen-webos-and-android/</guid>
      <description>What changes when the browser is welded to firmware, the device is in a shop you cannot visit, and the vendor API has no common shape.</description>
      <pubDate>Sun, 09 Nov 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>Devices</category>
      <category>Tizen</category>
      <category>webOS</category>
      <category>Android</category>
    </item>
    <item>
      <title>Why the same video plays on one device and fails on another</title>
      <link>https://asvanthc.github.io/writing/why-video-plays-on-one-device-but-fails-on-another/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/why-video-plays-on-one-device-but-fails-on-another/</guid>
      <description>A layered mental model for digital signage playback failures: container vs codec vs profile and level vs the hardware decoder that actually has to run it.</description>
      <pubDate>Sun, 21 Sep 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>Media</category>
      <category>Devices</category>
      <category>Debugging</category>
    </item>
    <item>
      <title>Authentication and authorization are different questions</title>
      <link>https://asvanthc.github.io/writing/authentication-vs-authorization/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/authentication-vs-authorization/</guid>
      <description>Why treating a valid session as permission produces a whole bug class, and where the ownership check actually belongs.</description>
      <pubDate>Sun, 03 Aug 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>Identity</category>
      <category>Architecture</category>
      <category>Security</category>
    </item>
    <item>
      <title>JWT, JWKS and RS256 — how token verification actually works</title>
      <link>https://asvanthc.github.io/writing/jwt-jwks-rs256-how-token-verification-works/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/jwt-jwks-rs256-how-token-verification-works/</guid>
      <description>A JWT is signed, not encrypted, and verifying one means checking the signature and the claims — here is how RS256, kid, JWKS and alg confusion fit together.</description>
      <pubDate>Sun, 22 Jun 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>JWT</category>
      <category>Security</category>
      <category>Identity</category>
    </item>
    <item>
      <title>PKCE: the attack it stops, and why it is now the default</title>
      <link>https://asvanthc.github.io/writing/pkce-why-modern-oauth-clients-need-it/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/pkce-why-modern-oauth-clients-need-it/</guid>
      <description>Why a public OAuth client cannot prove who it is at the token endpoint, how a stolen authorization code turns into real tokens, and how PKCE makes that code inert.</description>
      <pubDate>Sun, 11 May 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>PKCE</category>
      <category>OAuth 2.0</category>
      <category>Security</category>
    </item>
    <item>
      <title>OIDC vs OAuth 2.0 — what actually happens when you log in</title>
      <link>https://asvanthc.github.io/writing/oidc-vs-oauth2-what-happens-during-login/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/oidc-vs-oauth2-what-happens-during-login/</guid>
      <description>OAuth 2.0 grants permission, not identity. Here is what OpenID Connect adds, why an access token is the wrong thing to read, and how nonce differs from state.</description>
      <pubDate>Sun, 30 Mar 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>OpenID Connect</category>
      <category>OAuth 2.0</category>
      <category>Identity</category>
    </item>
    <item>
      <title>Understanding the OAuth 2.0 Authorization Code flow from first principles</title>
      <link>https://asvanthc.github.io/writing/oauth2-authorization-code-flow-from-first-principles/</link>
      <guid isPermaLink="true">https://asvanthc.github.io/writing/oauth2-authorization-code-flow-from-first-principles/</guid>
      <description>The Authorization Code flow is not a list of steps to memorise. It falls out of one constraint: the only lever an authorization server has is a redirect.</description>
      <pubDate>Sun, 16 Feb 2025 00:00:00 GMT</pubDate>
      <dc:creator>Asvanth C</dc:creator>
      <category>OAuth 2.0</category>
      <category>Identity</category>
      <category>Web</category>
    </item>
  </channel>
</rss>
