Articles on AI delivery, architecture, governance and implementation.
Articles and notes on applied AI, software delivery, and system design. Practical implementation notes, architecture decisions, learning paths, and lessons from shipping production software.
From a laptop demo to production - what an AI feature really costs
We built a RAG assistant on a laptop with Ollama, then shipped it on Azure OpenAI. The migration took an afternoon. Everything we learned afterwards is the actual story.
By Javier HackChoosing an AI stack without overengineering it
A compact framework for picking providers, orchestration tools, and hosting without adding unnecessary complexity.
By Javier HackGuardrails I use when AI touches a real product
A privacy-safe look at evaluation points, constraints, and review gates that keep AI behavior predictable.
By Javier HackWhat changes when AI becomes part of the product surface
A note on UX expectations, support implications, and the engineering trade-offs that show up after launch.
By Javier HackEngineering practices that make AI easier to ship
Why solid software foundations matter even more once model behavior is part of the application.
By Javier HackBuilding ShiftGreenBot: a RAG Product Finder
A walkthrough of the chatbot I built for the marketplace: how it turns plain language into grounded product recommendations using Azure OpenAI, MongoDB vector search, and a RAG flow.
By Javier HackConnecting the Vendor Dashboard to Entra ID
A walkthrough of wiring a React app on Azure Static Web Apps to a C# .NET API, using Entra External ID for login and keeping vendor access under the backend control.
By Javier HackPerformance Budgets for the Web Surfaces
A practical way we protect user experience with measurable frontend performance thresholds.
By Javier HackContract-First API Design at Shift
How we use explicit contracts to align frontend and backend delivery while protecting velocity.
By Javier HackWhy Shift Runs as a Monorepo
How one repository helps us move faster across product, API, and shared packages with better consistency.
By Javier Hack