<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
  <channel>
    <title>Amr Abed's Blog</title>
    <link>https://blog.amrabed.com</link>
    <description>Technical articles and thoughts on AI, Cloud Architecture, and Software Engineering by Amr Abed.</description>
    <language>en-us</language>
    <lastBuildDate>Thu, 01 Oct 2026 22:46:20 GMT</lastBuildDate>
    
    <item>
      <title><![CDATA[Stop Writing Lambda Boilerplate]]></title>
      <link>https://blog.amrabed.com/aws-lambda-templates/</link>
      <guid>https://blog.amrabed.com/aws-lambda-templates/</guid>
      <pubDate>Sat, 18 Apr 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[Accelerate your serverless development with production-grade Python templates for AWS Lambda, pre-wired with best practices and modern tooling.]]></description>
    </item>

    <item>
      <title><![CDATA[Self-Host an AI Agent Using OpenClaw and WhatsApp Cloud API (2026)]]></title>
      <link>https://blog.amrabed.com/openclaw-whatsapp-agent/</link>
      <guid>https://blog.amrabed.com/openclaw-whatsapp-agent/</guid>
      <pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[You shouldn’t need to pay a middleman just to put your AI agent on WhatsApp — yet that’s the default everyone ends up recommending. After spending days wading through scattered resources, I finally got OpenClaw talking directly to the WhatsApp Cloud API. Here’s the exact path I took.]]></description>
    </item>

    <item>
      <title><![CDATA[The Only AIP-C01 Study Plan You Need]]></title>
      <link>https://blog.amrabed.com/aip-c01-study-plan/</link>
      <guid>https://blog.amrabed.com/aip-c01-study-plan/</guid>
      <pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate>
      <description><![CDATA[I recently passed the new AWS Certified Generative AI Developer Professional (AIP-C01) exam as an early adopter (one of the first 5,000 worldwide). Here’s the exact 6-week plan I used, so you don’t have to figure it out from scratch.]]></description>
    </item>

    <item>
      <title><![CDATA[Your AI Code Can Be Elegant Too]]></title>
      <link>https://blog.amrabed.com/elegant-ai-code/</link>
      <guid>https://blog.amrabed.com/elegant-ai-code/</guid>
      <pubDate>Sun, 19 May 2024 00:00:00 GMT</pubDate>
      <description><![CDATA[As the Machine Learning Engineering Manager at an AI-powered SaaS company, I get to peek into the machine learning (ML) code written by data scientists on the team. Oh, and when I’m not doing that, I dabble in the occasional Kaggle competition — although I must admit, I’m more of a casual competitor than a podium contender.]]></description>
    </item>

    <item>
      <title><![CDATA[Enjoy your empty inbox!]]></title>
      <link>https://blog.amrabed.com/empty-inbox-productivity/</link>
      <guid>https://blog.amrabed.com/empty-inbox-productivity/</guid>
      <pubDate>Mon, 12 Jun 2023 00:00:00 GMT</pubDate>
      <description><![CDATA[I have had my Gmail since I got my invite back in 2004/2005 (Yes, Gmail was by invite only back then), and I have been using it as my primary email since. Only recently, I have also started shifting many of my email communications to my relatively new Outlook inbox.]]></description>
    </item>

    <item>
      <title><![CDATA[Goodbye, garage door remote]]></title>
      <link>https://blog.amrabed.com/garage-door-remote-carplay/</link>
      <guid>https://blog.amrabed.com/garage-door-remote-carplay/</guid>
      <pubDate>Sun, 08 Jan 2023 00:00:00 GMT</pubDate>
      <description><![CDATA[In another post, I described how I automated my 2006 garage door using Home Assistant to open and close as I enter or leave my home. Here, I am building on top of that to close the loop and use Apple CarPlay to open the garage door to leave my garage and close it after I enter from my car screen. No need for my garage door remote anymore.]]></description>
    </item>

    <item>
      <title><![CDATA[Open, Sesame! How I automated my 15-year-old garage door]]></title>
      <link>https://blog.amrabed.com/smart-garage-automation/</link>
      <guid>https://blog.amrabed.com/smart-garage-automation/</guid>
      <pubDate>Sun, 08 Jan 2023 00:00:00 GMT</pubDate>
      <description><![CDATA[I recently moved into a house with an attached garage, for which the owner handed me a bulky remote control for the garage door. Every time I arrived or left home, I reached for the remote and made sure to be close enough to the door to open or close it. After a couple of months of doing that and parking outside my garage most of the time, I knew there must be a better way.]]></description>
    </item>

    <item>
      <title><![CDATA[Adding Firebase to iOS Project — The Lazy Way]]></title>
      <link>https://blog.amrabed.com/firebase-ios-lazy-way/</link>
      <guid>https://blog.amrabed.com/firebase-ios-lazy-way/</guid>
      <pubDate>Sat, 19 Sep 2020 00:00:00 GMT</pubDate>
      <description><![CDATA[If you are not already using CocoaPods in your project, you should start by installing it using this command:]]></description>
    </item>

    <item>
      <title><![CDATA[Using Google Cloud and Docker to Test your Jekyll Website]]></title>
      <link>https://blog.amrabed.com/gcp-docker-jekyll/</link>
      <guid>https://blog.amrabed.com/gcp-docker-jekyll/</guid>
      <pubDate>Mon, 14 Sep 2020 00:00:00 GMT</pubDate>
      <description><![CDATA[I am hosting my website on GitHub Pages, so I am using Jekyll to build it. Whenever I update the website code, I need to test it “locally” before pushing/publishing to GitHub.]]></description>
    </item>

    <item>
      <title><![CDATA[I recently interviewed with two FAANG companies — Here is my impression]]></title>
      <link>https://blog.amrabed.com/faang-interviews-reflection/</link>
      <guid>https://blog.amrabed.com/faang-interviews-reflection/</guid>
      <pubDate>Thu, 10 Sep 2020 00:00:00 GMT</pubDate>
      <description><![CDATA[Let us call them Company A and Company Z. For company A, I already had an internship with them in the past, so I skipped their online assessment and went directly to one phone screening session, followed by the final round of five virtual onsite interviews. For company Z, although I had onsite interviews with them a couple of years ago, I still had to go through their online assessment, followed by their final round of four virtual onsite interviews.]]></description>
    </item>
  </channel>
</rss>