<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Khaled Garbaya - Blog</title><description>Engineering Leader, Developer and educator. I write about web development, software engineering and leadership.</description><link>https://khaledgarbaya.net/</link><language>en-us</language><copyright>Copyright 2026 Khaled Garbaya</copyright><managingEditor>Khaled Garbaya</managingEditor><webMaster>Khaled Garbaya</webMaster><generator>Astro</generator><item><title>Simplicity Is Invisible by Design. That Makes It a Management Problem.</title><link>https://khaledgarbaya.net/blog/simplicity-is-invisible/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/simplicity-is-invisible/</guid><description>Engineering teams reward complexity by accident because simplicity leaves no artifact. Four ways a manager can make avoided complexity visible.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Engineering teams reward complexity by accident because simplicity leaves no artifact. Four ways a manager can make avoided complexity visible.</content:encoded><category>engineering-leadership</category><category>engineering-culture</category><category>management</category><category>simplicity</category><category>promotions</category></item><item><title>Meet APE — Agentic Product Engineering</title><link>https://khaledgarbaya.net/blog/meet-ape/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/meet-ape/</guid><description>We shipped a greenfield project in three weeks by building the system around the AI models, not the prompts. I call it APE: Agentic Product Engineering.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>We shipped a greenfield project in three weeks by building the system around the AI models, not the prompts. I call it APE: Agentic Product Engineering.</content:encoded><category>ai-engineering</category><category>agentic-engineering</category><category>ai-workflow</category><category>engineering-leadership</category></item><item><title>AI Engineering Workflows Are Built for One Orchestrator. Here&apos;s What Breaks at Team Scale.</title><link>https://khaledgarbaya.net/blog/ai-engineering-workflows-team-scale/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/ai-engineering-workflows-team-scale/</guid><description>AI engineering workflows assume one expert orchestrator. Here&apos;s what breaks when five engineers run agent sessions on one codebase — and our fix.</description><pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>AI engineering workflows assume one expert orchestrator. Here&apos;s what breaks when five engineers run agent sessions on one codebase — and our fix.</content:encoded><category>ai-engineering</category><category>team</category><category>harness-engineering</category><category>management</category></item><item><title>AI Coding Workflow: What Actually Worked</title><link>https://khaledgarbaya.net/blog/ai-coding-workflow-what-worked/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/ai-coding-workflow-what-worked/</guid><description>AI-assisted coding patterns that actually work, from months of experiments: two case studies — delegated testing and parallel review with Claude Code.</description><pubDate>Fri, 16 Jan 2026 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>AI-assisted coding patterns that actually work, from months of experiments: two case studies — delegated testing and parallel review with Claude Code.</content:encoded><category>ai</category><category>workflow</category><category>productivity</category></item><item><title>Mastra Workflows: A Complete Guide with Code Examples</title><link>https://khaledgarbaya.net/blog/mastering-mastra-ai-workflows/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/mastering-mastra-ai-workflows/</guid><description>Build Mastra AI workflows step by step — parallel steps, branching, suspend/resume, multi-agent, and serverless deployment — with TypeScript examples.</description><pubDate>Sun, 04 May 2025 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Build Mastra AI workflows step by step — parallel steps, branching, suspend/resume, multi-agent, and serverless deployment — with TypeScript examples.</content:encoded><category>typescript</category><category>ai</category><category>mastra</category></item><item><title>Mastra: An AI Framework Built for TypeScript, Not Ported to It</title><link>https://khaledgarbaya.net/blog/why-mastra-might-be-your-new-best-friend/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/why-mastra-might-be-your-new-best-friend/</guid><description>Mastra is a TypeScript-native AI framework — typed agents and workflows, a local dev sandbox, memory, and built-in evals. Built for how you already code.</description><pubDate>Sat, 03 May 2025 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Mastra is a TypeScript-native AI framework — typed agents and workflows, a local dev sandbox, memory, and built-in evals. Built for how you already code.</content:encoded><category>typescript</category><category>ai</category><category>mastra</category></item><item><title>An introduction to start using Eleventy</title><link>https://khaledgarbaya.net/blog/an-introduction-to-start-using-eleventy/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/an-introduction-to-start-using-eleventy/</guid><description>Eleventy, or 11ty, is a powerful yet straightforward static site generator. It does not require any config to get started.</description><pubDate>Sun, 07 Feb 2021 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Eleventy, or 11ty, is a powerful yet straightforward static site generator. It does not require any config to get started.</content:encoded><category>eleventy</category><category>static-site-generator</category><category>jamstack</category></item><item><title>4 ways to use Axios interceptors</title><link>https://khaledgarbaya.net/blog/4-ways-to-use-axios-interceptors/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/4-ways-to-use-axios-interceptors/</guid><description>Axios interceptors are a powerful way to manage HTTP requests. Learn 4 ways to use them: handle errors, add headers, transform data, and more.</description><pubDate>Sun, 31 Jan 2021 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Axios interceptors are a powerful way to manage HTTP requests. Learn 4 ways to use them: handle errors, add headers, transform data, and more.</content:encoded><category>javascript</category><category>axios</category><category>http</category><category>interceptors</category></item><item><title>My new mac setup for web development in 2021</title><link>https://khaledgarbaya.net/blog/my-new-mac-for-web-development-in-2021/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/my-new-mac-for-web-development-in-2021/</guid><description>My 2021 Mac setup for web development: a detailed list of every tool I install from scratch to handle day-to-day dev work.</description><pubDate>Tue, 19 Jan 2021 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>My 2021 Mac setup for web development: a detailed list of every tool I install from scratch to handle day-to-day dev work.</content:encoded><category>mac</category><category>web-development</category><category>tools</category></item><item><title>2020 A year in review</title><link>https://khaledgarbaya.net/blog/2020-a-year-in-review/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/2020-a-year-in-review/</guid><description>My 2020 in review: welcoming our first baby and a year shipping JAMstack educational content — the highs, the lows, and lessons learned.</description><pubDate>Sat, 19 Dec 2020 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>My 2020 in review: welcoming our first baby and a year shipping JAMstack educational content — the highs, the lows, and lessons learned.</content:encoded><category>year-in-review</category><category>jamstack</category><category>2020</category></item><item><title>Gatsby As a Replacement for Create-react-app</title><link>https://khaledgarbaya.net/blog/gatsby-as-a-replacement-for-create-react-app/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/gatsby-as-a-replacement-for-create-react-app/</guid><description>Gatsby vs create-react-app: both cut config, but Gatsby adds built-in performance, static rendering with no server, and a rich plugin ecosystem.</description><pubDate>Wed, 01 Jan 2020 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Gatsby vs create-react-app: both cut config, but Gatsby adds built-in performance, static rendering with no server, and a rich plugin ecosystem.</content:encoded><category>gatsby</category><category>react</category><category>create-react-app</category></item><item><title>Tl;Dr GraphQL</title><link>https://khaledgarbaya.net/blog/tl-dr-graphql/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/tl-dr-graphql/</guid><description>A quick intro to GraphQL, a query language and server-side runtime: define your types and fields, then write a resolver function for each.</description><pubDate>Sun, 12 May 2019 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>A quick intro to GraphQL, a query language and server-side runtime: define your types and fields, then write a resolver function for each.</content:encoded><category>graphql</category><category>api</category><category>query</category></item><item><title>How to create a node js command line tool with yargs middleware</title><link>https://khaledgarbaya.net/blog/how-to-create-a-node-js-command-line-tool-with-yargs-middleware/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/how-to-create-a-node-js-command-line-tool-with-yargs-middleware/</guid><description>Build a Node.js CLI tool with yargs middleware by treating commands like server routes — for cleaner, reusable command-line programs.</description><pubDate>Sun, 19 Aug 2018 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Build a Node.js CLI tool with yargs middleware by treating commands like server routes — for cleaner, reusable command-line programs.</content:encoded><category>nodejs</category><category>cli</category><category>yargs</category><category>middleware</category></item><item><title>Developer friendly APIs using ES6 Proxies</title><link>https://khaledgarbaya.net/blog/developer-friendly-apis-using-es6-proxies/</link><guid isPermaLink="true">https://khaledgarbaya.net/blog/developer-friendly-apis-using-es6-proxies/</guid><description>Proxiy Object gives you the ability to intercept access to an object properties and change its behaviour.</description><pubDate>Fri, 23 Feb 2018 00:00:00 GMT</pubDate><author>Khaled Garbaya</author><content:encoded>Proxiy Object gives you the ability to intercept access to an object properties and change its behaviour.</content:encoded><category>javascript</category><category>es6</category><category>proxies</category></item></channel></rss>