<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Afeh</title>
    <description>The latest articles on DEV Community by Afeh (@afeh).</description>
    <link>https://dev.to/afeh</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F618156%2F6bc8b44f-1632-439b-9dec-c3c63385bd06.png</url>
      <title>DEV Community: Afeh</title>
      <link>https://dev.to/afeh</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/afeh"/>
    <language>en</language>
    <item>
      <title>Building a Dynamic Profile API with FastAPI: My HNG Stage 0 Experience</title>
      <dc:creator>Afeh</dc:creator>
      <pubDate>Mon, 20 Oct 2025 13:16:54 +0000</pubDate>
      <link>https://dev.to/afeh/building-a-dynamic-profile-api-with-fastapi-my-hng-stage-0-experience-4an4</link>
      <guid>https://dev.to/afeh/building-a-dynamic-profile-api-with-fastapi-my-hng-stage-0-experience-4an4</guid>
      <description>&lt;p&gt;During Stage 0 of the Backend Wizards program, I built a simple yet insightful REST API endpoint called /me using FastAPI. The goal was to return my personal profile information, fetch a random cat fact from an external API, include a dynamic UTC timestamp, and format everything neatly in JSON. While it looked straightforward, it pushed me to understand key backend concepts like API integration, error handling, and deployment. I structured the project using Python, FastAPI, and the requests library, managed environment variables with python-dotenv, and deployed it seamlessly on Railway. I learned to anticipate failures from external APIs by adding try-except blocks, format timestamps in ISO 8601, and configure environment variables properly for cloud deployment. Seeing my live endpoint— &lt;a href="https://introproj-production.up.railway.app/me" rel="noopener noreferrer"&gt;https://introproj-production.up.railway.app/me&lt;/a&gt;&lt;br&gt;
—work flawlessly was satisfying. More than just completing a task, this experience taught me how much discipline and attention to detail backend development truly demands, from clean code structure to reliable production deployment.&lt;/p&gt;

</description>
      <category>sideprojects</category>
      <category>api</category>
      <category>python</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Doing Hard Things</title>
      <dc:creator>Afeh</dc:creator>
      <pubDate>Tue, 02 Jul 2024 09:28:46 +0000</pubDate>
      <link>https://dev.to/afeh/doing-hard-things-227f</link>
      <guid>https://dev.to/afeh/doing-hard-things-227f</guid>
      <description>&lt;h2&gt;
  
  
  "What doesn't kill you makes you stronger" - A strong man(probably).
&lt;/h2&gt;

&lt;p&gt;On the 9th of March, 2024, I woke up around 6 am. It was a Saturday so it was unusual for me to be up that early. I said my prayers, picked up my phone and opened WhatsApp. Scrolling through unread messages, a post in my school's Google Developer Student Club group caught my eye. "Django Developer Needed. DM." &lt;em&gt;Interesting&lt;/em&gt; I thought. After contemplating for some minutes and going through some moments of self-doubt, I opened the group and messaged the person who posted it. &lt;/p&gt;

&lt;p&gt;There was a catch. He said he was in need of a Django Developer with workable knowledge of Bootstrap. &lt;em&gt;Bruhhh&lt;/em&gt; I thought. I was a decent Django Developer, but front-end stuff like Bootstrap and CSS? Not my thing. I had a little chat with God on it and I felt cool about it. Taking a deep breath, I told the guy I'd take the gig. We discussed my charge and deadline- I had 24 hours to come up with a working Application. I said "No p", trying to sound confident(even though this was going to be my first paid gig, ever).&lt;/p&gt;

&lt;p&gt;There was no power in my hostel, so I packed my Laptop, my charger, Rubik's Cube(for when my brain stops cooperating) and notepad into my bag, and had my bath, drank tea, and headed to the co-working space on campus. While walking, I brainstormed about how the structure of the App would be- team management features, am I using Class Based Views or Function Based Views?, stuff like that. Half-excitement, half-terror tightened my chest. Had I bitten more than I can chew?? &lt;/p&gt;

&lt;p&gt;I got to the co-working space, paid the fee, took a seat. I booted my Laptop, opened VSCode and just stared. Instead of the usual thrill of building something new, a wave of imposter syndrome washed over me. &lt;em&gt;Omoo can I actually do this thing?&lt;/em&gt; I closed my eyes, said a quick prayer and started working. I had a deadline to beat.&lt;/p&gt;

&lt;p&gt;The next 15 hours were a blur of coding, troubleshooting, and frantic calls to friends for help and moral support. The only breaks I took were to solve my Cube and eat. I had never worked that long in my short coding life before and the exhilarating feeling I had when I made my final push to GitHub might just be similar to what Neil Armstrong felt when he took that first step on the moon. &lt;em&gt;One small step for Afebu and a giant leap for his coding career lol&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"I can do all things..." Paul (f.k.a Saul) from Tarsus&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Last month, I saw a post on X about HNG Internship 11. I had heard stories about how difficult, grueling and rigorous the whole process is. But then I remembered that 24-hour coding marathon. "Well, well, well," I thought, a smile creeping across my face. "Hello hard things, I guess we meet again."&lt;/p&gt;

&lt;p&gt;If you are interested in doing hard things too &lt;a href="https://hng.tech/internship"&gt;click here&lt;/a&gt; to register for the HNG Internship.&lt;/p&gt;

&lt;p&gt;I am Afebu Victor Balogun. This is my story, and I am sticking to it.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
