<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Writing on Jamal Yusuf</title><link>https://jamal.dev/writing/</link><description>Recent content in Writing on Jamal Yusuf</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 18 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://jamal.dev/writing/index.xml" rel="self" type="application/rss+xml"/><item><title>What My Side Projects Are Really About</title><link>https://jamal.dev/writing/what-my-side-projects-are-really-about/</link><pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/what-my-side-projects-are-really-about/</guid><description>&lt;p&gt;There is a particular kind of silence that arrives after a long day of architecture reviews and compliance checkpoints. The laptop is still warm. The room is dark. And somewhere in the back of my mind, a question starts tapping like a finger on glass: &lt;em&gt;what would it feel like if this were simpler, sharper, more human?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;That is usually when a side project begins.&lt;/p&gt;
&lt;p&gt;I do not build these tools to pad a portfolio. In my view, they are something closer to field notes — small, honest experiments in how software can support the way people actually think, focus, perceive, and play. Some are practical. Some are strange. All of them teach me something I bring back to the serious work.&lt;/p&gt;</description></item><item><title>The Boring Go Layer Between Your RAG Demo and Production</title><link>https://jamal.dev/writing/go-rag-ingestion-pipelines/</link><pubDate>Wed, 17 Jun 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/go-rag-ingestion-pipelines/</guid><description>&lt;p&gt;RAG demos are seductive. Chunk a PDF. Embed. Retrieve. Watch the answer sparkle. Applause. Next slide.&lt;/p&gt;
&lt;p&gt;Production RAG is a &lt;strong&gt;pipeline problem&lt;/strong&gt; — documents that change, access policies that differ by team, embeddings that stale, audits that ask where a paragraph came from three quarters ago. The demo never shows that part. The on-call engineer lives there.&lt;/p&gt;
&lt;p&gt;I keep choosing Go for the unglamorous middle between source systems and vector indexes. Not because Python cannot embed. Because &lt;strong&gt;operations is a language choice too&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Validating Agent Outputs in Go Before They Touch Production</title><link>https://jamal.dev/writing/go-validate-agent-outputs/</link><pubDate>Sun, 14 Jun 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/go-validate-agent-outputs/</guid><description>&lt;p&gt;An agent that sounds right is the most dangerous kind of wrong.&lt;/p&gt;
&lt;p&gt;I have seen it in healthcare workflows — confident JSON, clean prose, a downstream system that accepts the payload and only screams twenty minutes later when reconciliation fails. The model did its job. The &lt;strong&gt;system&lt;/strong&gt; failed to treat probability like probability.&lt;/p&gt;
&lt;p&gt;In Go, I fix that with a boring layer between the model and the world: &lt;strong&gt;validate before side effects&lt;/strong&gt;. Always.&lt;/p&gt;</description></item><item><title>Context Is the Kill Switch: Go, Cancellation, and LLM Timeouts</title><link>https://jamal.dev/writing/go-context-llm-timeouts/</link><pubDate>Wed, 10 Jun 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/go-context-llm-timeouts/</guid><description>&lt;p&gt;The first time I watched an agent runaway eat a month&amp;rsquo;s inference budget in an afternoon, nobody blamed the model. They should have blamed &lt;strong&gt;the missing kill switch&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The model kept going because nothing told it to stop. Tool calls chained. Retries compounded. Goroutines — or their equivalent — waited politely for a provider that had already left the building.&lt;/p&gt;
&lt;p&gt;In Go, the kill switch has a name: &lt;code&gt;context.Context&lt;/code&gt;. And I think it is the most underrated tool in production LLM orchestration.&lt;/p&gt;</description></item><item><title>The Case for Sharp Design Systems in 2026</title><link>https://jamal.dev/writing/sharp-design-systems/</link><pubDate>Tue, 02 Jun 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/sharp-design-systems/</guid><description>&lt;p&gt;There is a particular kind of interface that smiles at you while hiding its hierarchy.&lt;/p&gt;
&lt;p&gt;Rounded cards. Muted gradients. Friendly empty states. Everything slightly soft, slightly same — as if the design is afraid to tell you where to look first. I kept running into this in professional tools: dashboards that felt approachable until you needed an answer in under ten seconds. Then the softness became noise.&lt;/p&gt;
&lt;p&gt;I named my response &lt;strong&gt;REDLINE&lt;/strong&gt; — a design system for interfaces that &lt;strong&gt;commit&lt;/strong&gt;. Not playful. Not decorative. Not trying to be your friend. Trying to be &lt;strong&gt;clear&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Building Production-Grade AI Agents at Enterprise Scale</title><link>https://jamal.dev/writing/production-ai-agents-enterprise/</link><pubDate>Mon, 18 May 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/production-ai-agents-enterprise/</guid><description>&lt;p&gt;An agent that cannot reach production systems is not an agent. It is a &lt;strong&gt;demo with ambition&lt;/strong&gt; — and in healthcare, ambition without integration is just risk in a nicer font.&lt;/p&gt;
&lt;p&gt;I learned this leading multi-agent platforms wired into claims, membership, and payment flows — real latency SLAs, real audit requirements, real members on the other end of every invocation.&lt;/p&gt;
&lt;h2 id="integration-over-isolation"&gt;Integration over isolation&lt;/h2&gt;
&lt;p&gt;The value was never &amp;ldquo;another tab with a chat box.&amp;rdquo; Experts wanted help &lt;strong&gt;inside the flow of work&lt;/strong&gt; — grounded in operational context, historical data they could defend, and APIs that did not lie.&lt;/p&gt;</description></item><item><title>Why Go Remains the Best Language for LLM Orchestration</title><link>https://jamal.dev/writing/go-llm-orchestration/</link><pubDate>Sun, 03 May 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/go-llm-orchestration/</guid><description>&lt;p&gt;I have orchestrated LLM workloads in more than one language. Python gets you to demo fast. Go gets you to &lt;strong&gt;sleep&lt;/strong&gt; — or at least to on-call with fewer surprises.&lt;/p&gt;
&lt;p&gt;That is not ideology. It is fifteen years of distributed systems scar tissue talking.&lt;/p&gt;
&lt;h2 id="the-concurrency-advantage"&gt;The concurrency advantage&lt;/h2&gt;
&lt;p&gt;Agent orchestration is not one request. It is dozens of concurrent flows — tool calls, retrieval hops, validation steps, retries with independent timeout budgets — all competing for resources while a human waits on the other end.&lt;/p&gt;</description></item><item><title>Engineering Leadership in the Age of Generative AI</title><link>https://jamal.dev/writing/engineering-leadership-genai/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/engineering-leadership-genai/</guid><description>&lt;p&gt;The cloud shift asked teams to learn new deployment physics. Generative AI asks something stranger: &lt;strong&gt;learn new collaboration physics&lt;/strong&gt; — with tools that sound confident while being probabilistic, fast while being wrong in creative ways.&lt;/p&gt;
&lt;p&gt;Leading through that shift is not a tooling problem dressed up as strategy. It is a learning problem at organizational scale.&lt;/p&gt;
&lt;h2 id="lead-with-curiosity-not-fear"&gt;Lead with curiosity, not fear&lt;/h2&gt;
&lt;p&gt;I have seen two failure modes up close. Blanket restriction — &amp;ldquo;no AI until Legal finishes a novel.&amp;rdquo; Unchecked adoption — &amp;ldquo;ship the chatbot, ask forgiveness later.&amp;rdquo;&lt;/p&gt;</description></item><item><title>Why Most Enterprise AI Agents Fail</title><link>https://jamal.dev/writing/why-enterprise-ai-agents-fail/</link><pubDate>Thu, 15 Jan 2026 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/why-enterprise-ai-agents-fail/</guid><description>&lt;p&gt;I have watched smart teams ship impressive agent demos — and then watch those same agents fail the only test that matters: &lt;strong&gt;would an expert trust this under pressure?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The model is rarely the villain. The retrieval design is.&lt;/p&gt;
&lt;h2 id="the-expert-retrieval-gap"&gt;The expert retrieval gap&lt;/h2&gt;
&lt;p&gt;Most enterprise AI agents are built around a comforting pipeline: chunk, embed, retrieve, generate. It looks scientific. It scales on slides. It also assumes experts think in paragraphs — flat, interchangeable, equally worthy of attention.&lt;/p&gt;</description></item><item><title>The Go Advantage for Production Agentic Systems</title><link>https://jamal.dev/writing/go-advantage-agentic-systems/</link><pubDate>Wed, 10 Dec 2025 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/go-advantage-agentic-systems/</guid><description>&lt;p&gt;Agentic systems are distributed systems wearing a chat costume. The sooner you accept that, the fewer 3 a.m. pages you earn.&lt;/p&gt;
&lt;p&gt;I have been building Go backends since 2011 — Kafka pipelines, membership APIs, payment flows, the unglamorous center of enterprise operations. When multi-agent workflows arrived, I did not reach for a new religion. I reached for &lt;strong&gt;the same primitives that kept the event backbone alive&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="why-go-for-agent-orchestration"&gt;Why Go for agent orchestration&lt;/h2&gt;
&lt;p&gt;Multi-agent workflows are coordination problems: fan-out, join, timeout budgets, partial failure, human escalation. Go&amp;rsquo;s concurrency model — goroutines, channels, context cancellation — maps to those problems without pretending parallelism is free.&lt;/p&gt;</description></item><item><title>Governing GenAI at Scale</title><link>https://jamal.dev/writing/governing-genai-at-scale/</link><pubDate>Sat, 22 Nov 2025 00:00:00 +0000</pubDate><guid>https://jamal.dev/writing/governing-genai-at-scale/</guid><description>&lt;p&gt;Governance has a branding problem. Say the word in an engineering standup and watch shoulders drop. I understand why — too often it means slow reviews, vague anxiety, and a PDF no one read.&lt;/p&gt;
&lt;p&gt;But here is the reframe that actually worked in healthcare: &lt;strong&gt;good governance is a force multiplier&lt;/strong&gt;. When teams know the guardrails, they move faster inside them. Ambiguity is what kills velocity.&lt;/p&gt;
&lt;h2 id="governance-is-enablement"&gt;Governance is enablement&lt;/h2&gt;
&lt;p&gt;In regulated environments, governance is not about saying no. It is about creating &lt;strong&gt;safe paths to yes&lt;/strong&gt; — predictable tiers, instrumented controls, and clarity about what Tuesday&amp;rsquo;s compliance conversation will look like.&lt;/p&gt;</description></item></channel></rss>