<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Developer Tooling on Ikwuka Okoye</title><link>https://ikwukao.dev/tags/developer-tooling/</link><description>Recent content in Developer Tooling on Ikwuka Okoye</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Mon, 10 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://ikwukao.dev/tags/developer-tooling/index.xml" rel="self" type="application/rss+xml"/><item><title>Designing OpsPilot: Building a Modular DevOps Operations Toolkit</title><link>https://ikwukao.dev/journal/designing-opspilot/</link><pubDate>Mon, 10 Aug 2026 00:00:00 +0000</pubDate><guid>https://ikwukao.dev/journal/designing-opspilot/</guid><description>&lt;h2 id="designing-opspilot-building-a-modular-devops-operations-toolkit"&gt;Designing OpsPilot: Building a Modular DevOps Operations Toolkit&lt;/h2&gt;
&lt;p&gt;As backend systems become more complex, the operational work surrounding them becomes increasingly difficult to ignore.&lt;/p&gt;
&lt;p&gt;Running services, inspecting environments, managing containers, checking infrastructure, and performing repetitive maintenance tasks can quickly turn into a collection of shell commands, scripts, and undocumented procedures.&lt;/p&gt;
&lt;p&gt;That was the problem I wanted to explore with &lt;strong&gt;OpsPilot&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Rather than building another collection of unrelated scripts, I wanted to create a structured operations toolkit that could grow alongside the systems it manages.&lt;/p&gt;</description></item><item><title>Designing a CLI Architecture for PokedexCLI in Go</title><link>https://ikwukao.dev/journal/pokedexcli-architecture/</link><pubDate>Sun, 09 Aug 2026 00:00:00 +0000</pubDate><guid>https://ikwukao.dev/journal/pokedexcli-architecture/</guid><description>&lt;h2 id="designing-a-cli-architecture-for-pokedexcli-in-go"&gt;Designing a CLI Architecture for PokedexCLI in Go&lt;/h2&gt;
&lt;p&gt;Building a command-line application can look deceptively simple.&lt;/p&gt;
&lt;p&gt;At first, the requirements for PokedexCLI seem straightforward: accept a command, execute it, call the Pokémon API when necessary, and print the result.&lt;/p&gt;
&lt;p&gt;But even a small CLI becomes difficult to maintain when command handling, application state, networking, caching, and presentation logic are allowed to grow together.&lt;/p&gt;
&lt;p&gt;For PokedexCLI, I wanted to approach the problem as a real software-engineering exercise rather than simply building a collection of commands that happened to work.&lt;/p&gt;</description></item><item><title>What Building PokedexCLI Taught Me About Backend Engineering in Go</title><link>https://ikwukao.dev/journal/pokedexcli-command-lessons-learned/</link><pubDate>Sun, 09 Aug 2026 00:00:00 +0000</pubDate><guid>https://ikwukao.dev/journal/pokedexcli-command-lessons-learned/</guid><description>&lt;h2 id="what-building-pokedexcli-taught-me-about-backend-engineering-in-go"&gt;What Building PokedexCLI Taught Me About Backend Engineering in Go&lt;/h2&gt;
&lt;p&gt;PokedexCLI began as a relatively small Go application.&lt;/p&gt;
&lt;p&gt;The premise is simple: interact with Pokémon data through a command-line interface.&lt;/p&gt;
&lt;p&gt;But projects do not remain simple merely because their initial requirements are simple.&lt;/p&gt;
&lt;p&gt;As functionality grows, the application has to deal with API communication, pagination, application state, caching, command dispatch, data modeling, errors, and testing.&lt;/p&gt;
&lt;p&gt;That made PokedexCLI valuable as more than a CLI exercise.&lt;/p&gt;</description></item><item><title>Building OpsPilot: Why I Started a DevOps Platform</title><link>https://ikwukao.dev/journal/building-opspilot/</link><pubDate>Tue, 04 Aug 2026 00:00:00 +0000</pubDate><guid>https://ikwukao.dev/journal/building-opspilot/</guid><description>&lt;p&gt;OpsPilot started with a simple question: &lt;strong&gt;what would happen if I built the operational tooling I kept wishing I had?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As I continued working across backend engineering, DevOps, and cloud-native infrastructure, I found myself repeatedly dealing with the same categories of operational work. Instead of treating those tasks as isolated scripts and commands, I wanted to explore what it would look like to bring them together into a coherent engineering platform.&lt;/p&gt;</description></item><item><title>AI Agent</title><link>https://ikwukao.dev/projects/ai-agent/</link><pubDate>Fri, 10 Jul 2026 00:00:00 +0000</pubDate><guid>https://ikwukao.dev/projects/ai-agent/</guid><description>&lt;hr&gt;
&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;
&lt;p&gt;AI Coding Agent is a command-line developer tool built to explore how modern AI agents can reason about software projects and assist with real-world engineering workflows.&lt;/p&gt;
&lt;p&gt;The project focuses on the practical foundations of an AI-powered coding assistant: understanding a repository, processing developer instructions, reasoning about available context, and producing useful actions or code changes.&lt;/p&gt;
&lt;p&gt;Rather than treating an LLM as a simple text-generation interface, the project explores the architecture required to turn language models into practical software-engineering agents.&lt;/p&gt;</description></item></channel></rss>