<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[The AI Runtime: Builder Spotlight]]></title><description><![CDATA[Profiles of the startups, open-source projects, and individual builders shipping real AI-powered products. How they architected it, what tradeoffs they made, and what you can steal for your own work. Original reporting you won't find in your Twitter feed.]]></description><link>https://theairuntime.com/s/builder-spotlight</link><image><url>https://theairuntime.com/img/substack.png</url><title>The AI Runtime: Builder Spotlight</title><link>https://theairuntime.com/s/builder-spotlight</link></image><generator>Substack</generator><lastBuildDate>Sat, 09 May 2026 10:16:20 GMT</lastBuildDate><atom:link href="https://theairuntime.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Kranthi Manchikanti]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[aiengineerweekly@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[aiengineerweekly@substack.com]]></itunes:email><itunes:name><![CDATA[The AI Runtime]]></itunes:name></itunes:owner><itunes:author><![CDATA[The AI Runtime]]></itunes:author><googleplay:owner><![CDATA[aiengineerweekly@substack.com]]></googleplay:owner><googleplay:email><![CDATA[aiengineerweekly@substack.com]]></googleplay:email><googleplay:author><![CDATA[The AI Runtime]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[A Portfolio That Practices MRE]]></title><description><![CDATA[Vishnu Purohitham&#8217;s four shipped projects are a worked example of Model Reliability Engineering &#8212; and a soft hit on most of the AIfolio.]]></description><link>https://theairuntime.com/p/a-portfolio-that-practices-mre</link><guid isPermaLink="false">https://theairuntime.com/p/a-portfolio-that-practices-mre</guid><dc:creator><![CDATA[The AI Runtime]]></dc:creator><pubDate>Fri, 08 May 2026 11:02:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ysT0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="pullquote"><p><strong>TL;DR</strong> - Most early-career AI portfolios show the <a href="https://aiengineerweekly.substack.com/p/your-portfolio-website-wont-get-you">AIfolio pillars</a> &#8212; RAG, tool-use, multi-agent orchestration &#8212; and stop at &#8220;demo runs once.&#8221; <a href="https://github.com/TheJASSZ">Vishnu Purohitham&#8217;s GitHub</a> is rarer because the projects come pre-equipped with the parts MRE calls <strong>harness engineering</strong>: fallback chains, validation gates, quality thresholds, graceful degradation. The context engineering layer is real too &#8212; a T5 fine-tuned on the 226K-article XSum corpus (or 300K-article CNN-DailyMail) on Northeastern&#8217;s H200 cluster, BLIP adapted with LoRA r=16, <a href="https://github.com/TheJASSZ/InfoRetrieval_v2#tech-stack">BGE-base-en-v1.5 embeddings</a> at 768 dimensions, hybrid dense + keyword search. Three of four AIfolio pillars are touched. Persistent memory is the honest gap. The hire/study signal isn&#8217;t completeness &#8212; it&#8217;s that the harness wasn&#8217;t an afterthought. If you&#8217;re staffing AI engineers and you want a filter for MRE instincts, this is the kind of portfolio to compare against. If you&#8217;re building one, copy the disposition: harness <em>with</em> the model, not <em>after</em> it.</p></div><h2>Why this builder is worth a closer look</h2><p>There&#8217;s a recognizable shape to most AI engineering portfolios in late 2025 and 2026: a chatbot, a RAG demo, a &#8220;GPT wrapper for [niche],&#8221; and maybe one fine-tuning notebook. They show familiarity with the stack. They don&#8217;t show that the builder has internalized what <em>production</em> AI actually requires &#8212; the unglamorous infrastructure that sits around the model and decides whether the system survives contact with real input.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://theairuntime.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p><p><a href="https://www.linkedin.com/in/vishnupurohitham/">Vishnu Purohitham</a> is a Northeastern-affiliated builder whose portfolio inverts that ratio. Across four shipped projects &#8212; one a graduate-class capstone, three from hackathons spanning local Northeastern events to MIT&#8217;s Bitcoin Expo &#8212; the same architectural commitments show up. It&#8217;s the consistency that&#8217;s interesting, not any single project. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ysT0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ysT0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 424w, https://substackcdn.com/image/fetch/$s_!ysT0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 848w, https://substackcdn.com/image/fetch/$s_!ysT0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 1272w, https://substackcdn.com/image/fetch/$s_!ysT0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ysT0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png" width="1024" height="559" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:559,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:971859,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://theairuntime.com/i/196788986?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ysT0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 424w, https://substackcdn.com/image/fetch/$s_!ysT0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 848w, https://substackcdn.com/image/fetch/$s_!ysT0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 1272w, https://substackcdn.com/image/fetch/$s_!ysT0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F64aa3fd2-93b7-4910-a018-b8a6abc19246_1024x559.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>                                                                    Vishnu&#8217;s AIFolio</em></p><p>This Builder Spotlight reads the work through two frameworks. The <a href="https://substack.com/@theairuntime/p-192378432">AIfolio framework</a> gives us a way to talk about <em>what</em> an AI portfolio should contain &#8212; RAG with real evaluation, multi-agent orchestration, tool-use boundaries, persistent memory. <a href="https://substack.com/@theairuntime/p-193536389">Model Reliability Engineering (MRE)</a> gives us a way to talk about <em>how</em> it should be built &#8212; split into context engineering (what the model sees at inference time) and harness engineering (the control layer governing what the user sees). Together they answer the question hiring managers actually care about: does this builder ship things, or does this builder ship things that <em>hold up</em>?</p><div><hr></div><h2>The four projects, in one paragraph each</h2><p><strong><a href="https://github.com/TheJASSZ/InfoRetrieval_v2">InfoRetrieval v2</a></strong> &#8212; A multimodal RAG system for personal knowledge management. Ingests URLs, PDFs, DOCX files, raw text, images, and Chrome bookmarks through a four-layer pipeline. Web scraping uses Playwright with a Trafilatura fallback. OCR runs EasyOCR first, then Tesseract if the first pass returns less than 20 characters. Summarization uses a T5 fine-tuned on either XSum (226K articles) or CNN-DailyMail (300K articles) on Northeastern&#8217;s H200 HPC cluster. Image captioning uses BLIP with a LoRA adapter (r=16, alpha=32). Storage is <a href="https://github.com/TheJASSZ/InfoRetrieval_v2#layer-4--storage--retrieval">ChromaDB with hybrid dense + keyword search</a>. Whole thing ships as a Docker Compose stack with a React frontend.</p><p><strong><a href="https://github.com/BhanuHarshaY/Boston-311-Hack">Boston 311 AI Agent</a></strong> &#8212; A multilingual (English / Spanish / Portuguese) agent for Boston city services, built in under 36 hours at a Northeastern hackathon. The interesting choice isn&#8217;t the agent &#8212; it&#8217;s the orchestration. The agent fans out parallel tool calls across four live Boston Open Data sources (311 cases, weather, events, neighborhood trends) and streams reasoning back to the frontend over SSE. The visible reasoning panel isn&#8217;t a UX flourish; it&#8217;s a trust mechanism for users (older adults, non-English speakers) who would otherwise have no way to evaluate whether the answer is grounded.</p><p><strong><a href="https://github.com/TheJASSZ/zero-shot-annotator">Zero-Shot Video Annotator</a></strong> &#8212; A FiftyOne plugin built at the Voxel51 / Twelve Labs hackathon. The interesting design move: instead of training a classifier, it uses Twelve Labs Pegasus to generate natural-language descriptions of each clip, then matches those descriptions to a user-defined taxonomy via cosine similarity over Marengo embeddings (512-dim). Tested on a 691-clip workplace safety dataset across 8 behavior categories. Local API caching reportedly cut inference costs by 80%. Built-in human-in-the-loop review surfaces low-confidence predictions for manual sign-off.</p><p><strong><a href="https://github.com/TheJASSZ/PulseMesh">PulseMesh</a></strong> &#8212; A smartphone-based environmental DePIN built at the MIT Bitcoin Expo 2026 Virtual Hackathon. Native Android app collects sensor data (air pressure, noise, light) in the background, with a built-in Lightning wallet for instant micropayments via the L402 protocol. Backend includes a four-stage validation pipeline that detects spoofed readings before data hits the buyer-facing marketplace. Privacy-first design aggregates locations to city-block level before sale.</p><p>Two are flagship-quality builds. Two are 36-hour hackathon outputs. The architectural commitments are identical.</p><div><hr></div><h2>Where the AIfolio shows up &#8212; and where it doesn&#8217;t</h2><p>The AIfolio framework names four pillars an AI engineer&#8217;s portfolio should evidence: a RAG pipeline with real evaluation, a multi-agent system that solves a real problem, an MCP / tool-use integration with sensible boundaries, and a persistent memory architecture. We don&#8217;t score Vishnu&#8217;s portfolio against this &#8212; that turns a spotlight into an audit, and the AIfolio is a reference for the <em>concepts present</em>, not a checklist a builder has to pass. The interesting reading is which pillars Vishnu has built around and which one he hasn&#8217;t.</p><p><strong>RAG with real evaluation</strong> is built around in InfoRetrieval v2 &#8212; and &#8220;evaluation&#8221; is the word that earns it the hit. The <a href="https://github.com/TheJASSZ/InfoRetrieval_v2#training-scripts-hpc">training pipeline</a> reports ROUGE-1, ROUGE-2, and ROUGE-L on summarization, plus BLEU for captioning. Most &#8220;AIfolio RAG&#8221; demos skip the eval. This one ships it.</p><p><strong>Tool-use with sensible boundaries</strong> is built around in two places. The Boston 311 agent fans out parallel tool calls across four data sources with the reasoning panel exposed to the user &#8212; boundary as transparency. Zero-Shot Annotator routes low-confidence predictions to a human reviewer instead of writing them blindly to the labelset &#8212; boundary as fallback. Different mechanisms, same disposition: the tool-use isn&#8217;t the whole answer, and the system knows it.</p><p><strong>Multi-agent orchestration</strong> is approached, not fully delivered. The Boston 311 build is parallel tool-calling, not multi-agent in the canonical sense (no negotiation between agents, no planner-worker split). Worth naming honestly: the orchestration skill is real, the <em>multi-agent</em> label is generous.</p><p><strong>Persistent memory</strong> is the honest gap. Nothing in the four projects builds a cross-session memory layer (Mem0, Letta, Zep, or a custom architecture). Worth being clear about &#8212; if Vishnu wanted to round out the AIfolio, this is the next project to ship.</p><p>The pillars are reference points for what&#8217;s present. The more interesting question is <em>how</em> what&#8217;s present has been built. That&#8217;s MRE.</p><div><hr></div><h2>What the projects look like through the MRE lens</h2><p>MRE splits production AI work along two axes. <strong>Context engineering</strong> governs what the model knows at inference time &#8212; fine-tuning, RAG, embedding strategy, knowledge freshness, retrieval precision. <strong>Harness engineering</strong> governs what the user sees &#8212; guardrails, output validation, fallback paths, faithfulness checks, graceful degradation, auditability.</p><p>Most AI demos do the first. Vishnu&#8217;s projects do both. That&#8217;s the signal.</p><h3>Context engineering, layer by layer</h3><p>InfoRetrieval v2 is the project where the context engineering is most visible, and it&#8217;s done with care.</p><p>The summarizer isn&#8217;t FLAN-T5 off the shelf &#8212; it&#8217;s a T5-base fine-tuned for 3 epochs on XSum or CNN-DailyMail at batch size 16 and learning rate 3e-5, with beam search at 4 beams and a 1.2 repetition penalty for inference. The image captioner isn&#8217;t BLIP off the shelf &#8212; it&#8217;s BLIP with a LoRA adapter trained on Flickr8k at r=16, alpha=32, dropout 0.05. The embedder is <a href="https://github.com/TheJASSZ/InfoRetrieval_v2#tech-stack">BGE-base-en-v1.5</a> at 768 dimensions &#8212; a deliberate choice over default OpenAI embeddings, with retrieval running as hybrid dense + keyword search rather than pure cosine.</p><p>What&#8217;s worth naming: this isn&#8217;t fine-tuning for the sake of &#8220;I trained something.&#8221; Each model on the path has been picked or adapted to the role it plays in the pipeline. T5 because summarization is a sequence-to-sequence problem with strong public benchmarks. BGE because the embedder is a retrieval surface with its own SLO and the <a href="https://huggingface.co/spaces/mteb/leaderboard">MTEB leaderboard</a> is a real signal. Hybrid search because pure dense retrieval misses keyword-exact matches and the system has to handle both.</p><p>The Chrome bookmark sync and watchdog file consumer are the part most readers will overlook. These are <em>context freshness</em> mechanisms &#8212; automatic re-ingestion as new content lands. MRE treats freshness as a context-layer SLO; this project ships the plumbing for it.</p><h3>Harness engineering as the standout signal</h3><p>Harness engineering is where Vishnu&#8217;s portfolio separates itself from the median. The pattern repeats across all four projects: any layer where input variation can break the system has a backup path <em>and</em> a quality check that decides which path runs.</p><p>The minimal viable shape:</p><div class="callout-block" data-callout="true"><p><code>def extract(input_data):</code></p><p><code>    primary_result = primary_extractor(input_data)</code></p><p><code>    if quality_check(primary_result) &gt;= THRESHOLD:</code></p><p><code>        return primary_result, &#8220;primary&#8221;</code></p><p><code>    fallback_result = fallback_extractor(input_data)</code></p><p><code>    return fallback_result, &#8220;fallback&#8221;</code></p></div><p>InfoRetrieval v2&#8217;s web scraper runs Trafilatura first because it&#8217;s faster and lighter, and falls back to Playwright only if static extraction returns less than 50 characters. The OCR pipeline runs EasyOCR first and falls back to Tesseract if the first pass returns less than 20 characters, then returns a tuple of (text, method) where method is one of &#8220;easyocr&#8221;, &#8220;tesseract&#8221;, &#8220;combined&#8221;, or &#8220;none&#8221;. That last detail matters &#8212; auditability of which path actually ran is what makes the system debuggable three months later.</p><p>PulseMesh&#8217;s four-stage spoofing detection is the harness pointed at sensor data instead of extractor output, but it&#8217;s the same architectural move. Zero-Shot Annotator&#8217;s HITL review queue is the same move applied to model confidence &#8212; low-confidence predictions don&#8217;t get written silently, they get surfaced. The Boston 311 agent&#8217;s visible reasoning panel is the same move applied to user trust &#8212; the user can see what tools the agent called and decide whether to trust the answer.</p><p>What to call out: the validation layer isn&#8217;t decorative. It&#8217;s the part that lets the system <em>know its own confidence</em>, which is the precondition for graceful degradation. MRE treats this as the harness engineer&#8217;s primary deliverable. Vishnu ships it on a hackathon timeline.</p><div><hr></div><h2>Where the edges show</h2><p>Every project has visible trade-offs. Calling them out is the difference between a profile and a puff piece.</p><p><strong>InfoRetrieval v2 doesn&#8217;t scale past one machine.</strong> ChromaDB&#8217;s persistent client is single-process. The watchdog file consumer is async but in-process. None of this is wrong for a CS5130 capstone &#8212; but the architecture as written maxes out around one user with one Chrome bookmark file and one watched directory. Multi-user deployment would require a real DB tier, a job queue, and an actual auth layer. The README is honest about this; it doesn&#8217;t claim to be SaaS-ready.</p><p><strong>The Boston 311 agent was built in 36 hours.</strong> That shows. Sub-2-second latency is impressive for a parallel-tool-calling agent, but error handling for stale data sources, partial tool failures, or rate-limited Open Data endpoints would all need real work for a public deployment.</p><p><strong>Zero-Shot Annotator&#8217;s 80% cost reduction is from caching.</strong> The <em>first</em> annotation pass on any new dataset is expensive. The plugin is a good fit for &#8220;annotate this dataset once, then iterate on labels&#8221; &#8212; and a poor fit for &#8220;annotate streaming video as it arrives.&#8221; Worth knowing before you adopt it.</p><p><strong>PulseMesh&#8217;s four-stage validation adds latency and a trust assumption.</strong> The validators themselves can be wrong. A determined spoofer with knowledge of the validation pipeline can defeat statistical detection. The architecture is correct for an MVP DePIN; it would need a slashing or reputation mechanism to survive at scale.</p><p><strong>The persistent memory pillar isn&#8217;t built around at all.</strong> None of the four projects ship a cross-session memory architecture. For an AIfolio that&#8217;s &#8220;complete,&#8221; this is the next project. The honest read: three of four pillars touched, with strong harness engineering compensating for the gap.</p><p>None of these are dealbreakers. They&#8217;re the edges of work shipped fast against real constraints. The portfolio doesn&#8217;t try to hide them.</p><div><hr></div><h2>What readers can take away</h2><p>For new AI engineers building portfolios:</p><p><strong>The AIfolio pillars name what to build. MRE names how to build it.</strong> Both matter, and most portfolios over-invest in the first and under-invest in the second. A demo that hits all four AIfolio pillars but has no harness around any of them is weaker than three pillars built with real harness engineering.</p><p><strong>Pick one project and ship the harness.</strong> The minimum viable harness has three pieces: a fallback path on the layer most likely to fail, a quality gate that decides which path runs, and a way to audit which path actually ran (logs, return tuples, method tags). The cost is small. The signal is large.</p><p><strong>Context engineering doesn&#8217;t require an H200.</strong> T5-base on a Kaggle GPU works. The signal isn&#8217;t the compute &#8212; it&#8217;s that you can defend a dataset choice, an eval metric, and a hyperparameter. Without that, your context layer is indistinguishable from the median.</p><p><strong>Show the trade-offs.</strong> A README that says &#8220;this maxes out at one user, here&#8217;s why, here&#8217;s what would change for multi-tenant&#8221; reads as more senior than a README that claims SaaS-readiness it can&#8217;t back up. The InfoRetrieval v2 README&#8217;s frank acknowledgment that BLIP falls back to CPU on Apple Silicon &#8220;due to operator support limitations&#8221; is the right tone.</p><p>For mid-level engineers reviewing portfolios: the cheapest filter for MRE instincts is <em>does the harness exist at all</em>. Run through the candidate&#8217;s repos and ask &#8212; where does primary extraction live, what happens if it fails, and how would I know which path ran? The absence of an answer is the answer.</p><p>For hiring managers: a portfolio that ships hackathon-grade builds with the same architectural rigor as classroom flagship projects is a stronger signal than either taken alone. It says the patterns are <em>reflexive</em>, not assignment-driven. That&#8217;s what you&#8217;re hiring for.</p><div><hr></div><p>The most underrated skill in early-career AI engineering isn&#8217;t model selection or prompt design. It&#8217;s the discipline to architect around the model the same way you&#8217;d architect around any other unreliable dependency. Vishnu&#8217;s portfolio is interesting because every project assumes the unreliability and designs for it from line one &#8212; context engineering on the input side, harness engineering on the output side, with the AIfolio pillars showing up as the natural shape rather than the assignment. If you&#8217;re hiring, look for this. If you&#8217;re building, copy it.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://theairuntime.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Builder Spotlight - Armaan Agrawal ships like a forward-deployed engineer already]]></title><description><![CDATA[Seven production systems, one repeatable pattern, and the real-world skills most new grads don&#8217;t show up with.]]></description><link>https://theairuntime.com/p/builder-spotlight-armaan-agrawal</link><guid isPermaLink="false">https://theairuntime.com/p/builder-spotlight-armaan-agrawal</guid><dc:creator><![CDATA[The AI Runtime]]></dc:creator><pubDate>Fri, 24 Apr 2026 11:03:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!UMJE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="pullquote"><p><strong>TL;DR.</strong> Armaan Agrawal (CS @ Northeastern, class of 2026) has a new-grad portfolio that reads like a scout report for forward-deployed engineering. SamGPT is a RAG engine over the My First Million corpus with timestamp and speaker-attributed chunks that bridge into a Viral Clip Generator via FFmpeg &#8212; the retrieval and action paths share a schema on purpose, which is the move a Solutions Architect makes. He wired prompt-injection and harmful-request guardrails into an OpenAI Agents SDK build <em>in hour one of three</em> at a hackathon and placed 2nd. His co-op recommender solved cold-start with a staged text-match &#8594; collaborative-filtering rollout that will be deployed to 2500 students. He&#8217;s demonstrating the concepts <a href="https://aiengineerweekly.substack.com/p/your-portfolio-website-wont-get-you">the AIfolio framework</a> calls for &#8212; RAG, tool-use, voice continuity &#8212; but what makes the portfolio FDE-shaped is the <em>real-world skills around</em> those concepts: latency as a product feature, guardrails as a default, schema as operational design, staged rollout as architecture. If you&#8217;re staffing an FDE or Solutions Architect role, talk to him before he takes a traditional SWE offer.</p></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://theairuntime.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>The habit, stated</h2><p>Most new-grad portfolios are a pile of frameworks. Armaan&#8217;s is a pile of <em>systems shipped to specific users whose operational reality he understood</em>. That sounds soft until you look at the architectural choices &#8212; they&#8217;re the ones you make when the user&#8217;s failure mode, not the rubric, is what you&#8217;re optimizing against.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UMJE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UMJE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 424w, https://substackcdn.com/image/fetch/$s_!UMJE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 848w, https://substackcdn.com/image/fetch/$s_!UMJE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 1272w, https://substackcdn.com/image/fetch/$s_!UMJE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UMJE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png" width="1024" height="559" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:559,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UMJE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 424w, https://substackcdn.com/image/fetch/$s_!UMJE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 848w, https://substackcdn.com/image/fetch/$s_!UMJE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 1272w, https://substackcdn.com/image/fetch/$s_!UMJE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6e09d90f-b816-46af-af02-1e7980e0c033_1024x559.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>                           AIfolio Projects</em></p><p>Forward-deployed engineering and solutions architecture are the same job at different scales: drop into a domain you didn&#8217;t grow up in, compose a working system out of heterogeneous pieces, land it with safety and observability already in it, and iterate on the signal instead of the stack. Most new grads learn this over two years of production pain. Armaan has already shipped it seven times.</p><p>The AIfolio framework names the <em>concepts</em> an AI-engineering portfolio should demonstrate &#8212; RAG pipelines, tool-use architecture, agent design, memory and voice continuity. Armaan hits those concepts. What&#8217;s more interesting is what he does <em>around</em> them: the habits that make the concepts production-viable instead of demo-viable. That&#8217;s what this piece walks through.</p><h2>RAG with schema foresight (SamGPT + Viral Clip Generator)</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6Xlp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6Xlp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 424w, https://substackcdn.com/image/fetch/$s_!6Xlp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 848w, https://substackcdn.com/image/fetch/$s_!6Xlp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!6Xlp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6Xlp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png" width="1456" height="1165" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1165,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6Xlp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 424w, https://substackcdn.com/image/fetch/$s_!6Xlp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 848w, https://substackcdn.com/image/fetch/$s_!6Xlp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!6Xlp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F995f692d-44f1-43e6-bc18-c9afa3a4c200_1920x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>                            Viral clip generator</em></p><p><strong>Stack:</strong> Whisper / ASR, speaker diarization, embeddings, vector search, FFmpeg, Next.js.</p><p>SamGPT is a RAG system over the My First Million podcast corpus: semantic search, query expansion, suggested prompts, YouTube deep links to the exact timestamp. The Viral Clip Generator is the adjacent tool: paste a YouTube URL, get the top 3 sub-2-minute cuts auto-extracted as 16:9 exports.</p><p>What makes this architecturally non-obvious isn&#8217;t the RAG itself. It&#8217;s the <strong>bridge between the two services</strong>.</p><p>The data model carries timestamped, speaker-attributed chunks <em>all the way through</em> retrieval. A user who finds a quote in SamGPT can jump to the video at the exact second, or pass the chunk to FFmpeg and get a shippable 16:9 cut. Retrieval and generation aren&#8217;t separate products wearing the same skin &#8212; they share metadata, and the shared metadata <em>is</em> the feature.</p><p>This is the Solutions Architect move. It would have been easier to build two independent tools and call it a suite. Instead he built one pipeline with two exits, and the marginal cost of the second exit was near zero <em>because he designed the chunking schema for it upfront</em>. Most AI engineers bolt that on later and lose half the data.</p><p>The portable real-world skill: <strong>your chunking schema is a product decision, not an infrastructure decision</strong>. Armaan&#8217;s schema already had timestamps and speaker attribution because he knew a second surface (clip extraction) would need them. That&#8217;s designing the system to be legible to the next tool you&#8217;ll build against it &#8212; the skill that separates an AI engineer from a solutions architect.</p><h2>Tool-use architecture without MCP (Content Engine)</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!j5oq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!j5oq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 424w, https://substackcdn.com/image/fetch/$s_!j5oq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 848w, https://substackcdn.com/image/fetch/$s_!j5oq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!j5oq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!j5oq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png" width="1456" height="1165" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1165,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!j5oq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 424w, https://substackcdn.com/image/fetch/$s_!j5oq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 848w, https://substackcdn.com/image/fetch/$s_!j5oq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!j5oq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec99b164-fbbc-431f-8134-2bed799d83bc_1920x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>                            Content Engine</em></p><p><strong>Stack:</strong> Next.js, content pipelines, carousel export, AI rewrite with tone presets, personalized to voice and style data.</p><p>One source tweet, four output formats: LinkedIn long-form, IG carousel, newsletter, quote card. Three-pane UI: source feed on the left, tabbed editor in the middle (one tab per target format), live preview on the right.</p><p>Two choices worth calling out:</p><ul><li><p><strong>Format-specific editor tabs instead of a single &#8220;transform&#8221; button.</strong> Each target format has its own constraints, and he exposes them as first-class surfaces. This is the difference between treating output formats as parameters to one generator versus treating them as distinct tools that share an upstream source. The second is what a Solutions Architect picks when the user has real editorial control needs. It&#8217;s also the tool-use design pattern MCP formalizes &#8212; you don&#8217;t need MCP to pick it, you need the instinct that separates tool boundaries along user-decision boundaries.</p></li><li><p><strong>Voice personalization.</strong> Most &#8220;AI rewrite&#8221; tools regress your writing toward a generic model voice. Armaan&#8217;s design carries personal-voice signal into every tab, so the four generated variants don&#8217;t all sound vaguely like a LinkedIn guru. The failure mode of cross-platform content tools is well-known: you write once, four generated variants all need a hand-rewrite, the tool saves you zero minutes. Closing that gap is a real-world skill the canonical AIfolio memory pillar hints at but most projects miss.</p></li></ul><h2>Latency as a product feature (Red Sox)</h2><p><strong>Stack:</strong> Django, Vue.js, Redis, Celery, PostgreSQL, Okta SSO, Docker. Live at Fenway Park, Jan&#8211;Sep 2024.</p><p>Live batting-lineup API for journalists during games. Previous method: a handwritten whiteboard. If the API went down mid-game, press couldn&#8217;t report the lineup before first pitch.</p><p>The number most new grads would chase is features. Armaan chased <strong>tail latency</strong>: 1.2s &#8594; 121ms, a ~90% cut, via Redis on the hot path and Celery for everything off-path. Two architectural choices inside that:</p><ul><li><p><strong>Cache on the read path, not everywhere.</strong> Redis in front of lineup reads means the request journalists actually make &#8212; &#8220;what&#8217;s the roster right now&#8221; &#8212; never waits on downstream services. Cache invalidation is keyed to lineup changes, so staleness lives in a narrow, owned window.</p></li><li><p><strong>Celery for everything the user isn&#8217;t waiting on.</strong> Notifications, logging, eventual-consistency writes &#8212; off the request thread. The hot path becomes trivial to reason about because it does one thing.</p></li></ul><p>None of this is AI engineering. It matters for an AI portfolio anyway, because <a href="https://aiengineerweekly.substack.com/p/the-retrofit-tax">the Retrofit Tax</a> is what teams pay when they try to add observability, latency discipline, or governance to a system that was shipped without them. Armaan doesn&#8217;t retrofit. Production-shaped defaults go in the original design, where the cost of adding them is close to zero. That&#8217;s the posture that keeps his work from accruing tax as he scales it.</p><h2>Guardrails in hour one, not hour forty (AgentOps hackathon)</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Kjud!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Kjud!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 424w, https://substackcdn.com/image/fetch/$s_!Kjud!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 848w, https://substackcdn.com/image/fetch/$s_!Kjud!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!Kjud!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Kjud!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png" width="1456" height="1092" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1092,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Kjud!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 424w, https://substackcdn.com/image/fetch/$s_!Kjud!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 848w, https://substackcdn.com/image/fetch/$s_!Kjud!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!Kjud!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F028efe86-f165-495f-bccf-57388ab4b007_1920x1440.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>                             Guardrails Setup</em></p><p><strong>Stack:</strong> OpenAI Agents SDK. 3 hours. 2nd place.</p><p>Most hackathon demos ship a working prototype and skip safety entirely &#8212; the rubric doesn&#8217;t require it, and guardrails feel like production overhead. Armaan shipped <strong>input guardrails from line one</strong>, with prompt-injection blocks and harmful-request blocks both live in the demo.</p><p>Reading this as a minor detail misses what it signals. The OpenAI Agents SDK exposes guardrail primitives cheaply; almost nobody uses them on a hackathon timeline. Using them anyway is the same instinct as caching the Red Sox hot path: <em>production-shaped defaults on demo-shaped timelines</em>.</p><p>This is also where the behavioral-reliability work most AI engineers learn after their first incident shows up <em>pre-incident</em>. Validation gates, input filters, behavioral guardrails before a model&#8217;s output reaches the user &#8212; these are not optional for production systems, but they&#8217;re almost always added reactively. Reaching for them at hour one of a three-hour build is the instinct, and it&#8217;s not teachable under deadline.</p><p>For an FDE hiring manager, this is the cheapest-to-evaluate signal in the portfolio.</p><h2>Schema as operational product design (Feedshare)</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9Vaj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9Vaj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 424w, https://substackcdn.com/image/fetch/$s_!9Vaj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 848w, https://substackcdn.com/image/fetch/$s_!9Vaj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!9Vaj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9Vaj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png" width="1456" height="1165" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1165,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9Vaj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 424w, https://substackcdn.com/image/fetch/$s_!9Vaj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 848w, https://substackcdn.com/image/fetch/$s_!9Vaj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 1272w, https://substackcdn.com/image/fetch/$s_!9Vaj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e202140-13c5-47bd-bd72-19c67d0167bc_1920x1536.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>                                  <em>Feedshare</em></p><p><strong>Stack:</strong> SwiftUI, Firebase, iOS. 100+ campus users.</p><p>The framing &#8212; &#8220;campus free food shouldn&#8217;t die in a group chat&#8221; &#8212; constrains the whole system. The schema isn&#8217;t &#8220;post + comments.&#8221; It&#8217;s:</p><ul><li><p>Photo-first feed (you don&#8217;t walk across campus on a text description)</p></li><li><p>Map pins (location is a first-class field, not a comment)</p></li><li><p>Multi-photo upload, up to 5 (proof, not hype)</p></li><li><p>Room + headcount fields (so you know whether it&#8217;s worth the walk before you leave)</p></li></ul><p>Every field on the post form corresponds to a decision the user makes: <em>is this real, where is it, is it still there, is it worth the walk</em>. The schema is the product.</p><p>This distinguishes FDE work from generic backend work. The post schema isn&#8217;t generic &#8212; it encodes the decision-making workflow of the specific user on the specific campus. Firebase gets him there fast because the real work isn&#8217;t the backend; it&#8217;s figuring out what data the user&#8217;s decision actually requires and refusing to collect anything else. Shipping to 100+ students on a campus with real food-waste pressure means the hypothesis has already been validated in the field.</p><h2>Cold-start as staged architecture, not a hack (co-op recommender)</h2><p>While at NExT Consulting, he built a co-op recommender for Northeastern students &#8212; planning to be used by 2,500 in intro university classes. New students have no history, the classical cold-start trap that kills most recommendation systems before they ship.</p><p>His rollout: <strong>text matching first</strong> (profile-to-role matching for the cold-start population), <strong>then shift to collaborative filtering</strong> once interaction data accumulates. &#8220;Good matches from day one, better over time.&#8221;</p><p>This is the staged-architecture move a Solutions Architect picks. You don&#8217;t wait for data to deploy the system, and you don&#8217;t stay on cold-start forever. You design the data pipeline so the transition is a config change, not a rewrite. For a new grad to pick the staged approach on a real user-impact system is unusual &#8212; most new engineers either over-engineer the eventual collaborative-filter stack and ship late, or ship the text-match version with no path off it and accumulate the tax later.</p><h2>Why this maps to FDE / Solutions Architect work</h2><p>Forward-deployed engineering is:</p><ol><li><p>Understand a domain you didn&#8217;t grow up in <em>faster than the customer thinks is possible</em>.</p></li><li><p>Compose a working system from heterogeneous pieces (their stack + yours).</p></li><li><p>Land it with safety, observability, and latency budgets already wired in.</p></li><li><p>Iterate on the signal, not the stack.</p></li></ol><p>Armaan has already run this pattern across five unrelated domains: chemical plant telemetry, a baseball press box, campus food logistics, long-form podcast content, and an AI agent under safety scrutiny. The domains are portable. The <em>habit</em> is portable.</p><p>The concepts an AI-engineering portfolio needs to demonstrate &#8212; RAG, tool-use, voice continuity, agent design &#8212; are necessary. The real-world skills that make those concepts production-viable are what&#8217;s rare: schema foresight, tail-latency discipline, pre-incident guardrails, schema-as-product thinking, staged rollout. Armaan&#8217;s portfolio has both layers. That&#8217;s the thing most new-grad hires don&#8217;t come with.</p><p>Solutions Architect work has a narrower shape &#8212; more &#8220;compose a durable reference architecture for customers&#8221; than &#8220;ship a one-off&#8221; &#8212; but the underlying disposition is identical. Pick the production-shaped default, not the demo-shaped one. Design the data model for the surface you&#8217;ll build next. Treat latency and guardrails as product features. Refuse to accrue Retrofit Tax.</p><h2>How to reach him</h2><ul><li><p><strong>Portfolio:</strong> <a href="https://armaanagrawal.com">armaanagrawal.com</a> &#8212; worth reading in order, it&#8217;s structured as seven chapters</p></li><li><p><strong>GitHub:</strong> <a href="https://github.com/airman416">github.com/airman416</a> &#8212; SamParrBot (SamGPT) and Content-Engine are the deepest reads</p></li><li><p><strong>LinkedIn:</strong> <a href="https://linkedin.com/in/agr1">linkedin.com/in/agr1</a></p></li><li><p><strong>Target roles:</strong> Forward Deployed Engineer, Solutions Architect</p></li></ul><div><hr></div><p><strong>For readers building their own AIfolio:</strong> the pattern that repeats across his work is cheaper to adopt than you&#8217;d think. Ship guardrails in hour one, not hour forty. Design your RAG chunking schema around the second surface you&#8217;ll build, not the first. Stage your cold-start into a config change instead of a rewrite. Cache the read path before you need to. None of that is senior-only work. It&#8217;s just the production-shaped default most engineers don&#8217;t pick until the first incident teaches them to &#8212; and the reason their portfolios end up carrying Retrofit Tax instead of compounding.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://theairuntime.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading! Subscribe for free</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item></channel></rss>