Skip to content

Tag: ai

Rise of the Product Engineer

I see a trend in which, with the latest advancements of AI, the roles of engineers and POs are going to merge on a 1.5- to 3-year horizon, and only those who are willing to expand their scope will make it out.

How do I see that? There’s a pattern I’ve observed more and more around me, it’s engineering managers with the following profile: 7+ direct reports, a highly technical background and technical track record, and has been working in the same industry and domain space for 4+ years.

In the past, with such a number of reports, team knowledge scope size, and amount organizational choirs would mean these people would be at full capacity, and they might push an occasional commit, but that would be a rare occurrence.

But what I’ve witness over the past months is that these profiles have been very prolific with pushing out features, and it has always happened once they got access to an agentic AI harness and frontier model (whichever flavor of Claude or ChatGPT rocks their boat). They have a full scope, they’re busy and often stretched, but yet, they find the time to push features between meetings by figuring out the business problem to solve with stakeholders, directing the AI to write code for them, and verifying manually that the code does deliver the intended business goal.

What I Learned Building an AI Software Factory

Disclaimer: this article was written by an organic sentient being, me, and not by an AI. All typos, mistakes, and repetitions are mine, and I am proud of them.

I tend not to trust my own understanding of a topic if I have just read a description of it, or watched a video. My level of understanding is several orders of magnitude better when I’ve been learning a topic by actively engaging with the topic for example by trying to build something, because a lot of the deep understanding of something only happens when you interact with it, and when you observe it collide with the real world.

For example, I’ve written compilers to understand how programming languages work, I’ve written a persisted key-value store to understand large-scale data storage systems, and more recently, I wrote a crypto payment system to understand the Ethereal blockchain and its ecosystem.

Everyone nowadays is selling us their AI skills, AI best practices, and God’s truth on how we are supposed to use AI. I’ve myself drank the kool-aid only to wake up to the reality that all these people are only using persuasion and marketing tricks but not proving anything, and if I wanted to understand the impact of AI on software engineering, then I would have to develop my own system and workflow, and see it run in wild.

So my idea was simple: build an AI workflow, apply it to a few projects, and observe myself interact with it to see what new habits I’m adopting, what I’m learning, what works and doesn’t. After a few weeks, I would extract the guiding principles behind my decisions, as a way to gain a deeper understanding of how those systems work under the hood, and equip myself with some mental models of how one should interact with such systems in the future.

Nine weeks and 421 commits later, I’ve built a workflow which I’ve named Backlog Loop and released on GitHub, and in this article I am sharing what I’ve learned. I don’t recommend that you should use this tool, but rather, read about the issues and limitations with AI that it helped me uncover.

What I worry about with AI

Disclaimer: this article has been written 100% by me, a human being, using mechanical finger typing. All typos and lack of stylistic taste are entirely mine.

I haven’t taken to this blog for a year now. I changed jobs. I was busy with family matters. I got into a rabbit hole of tokenmaxxing building a coding harness for writing code I can trust with LLMs. And I took notes about things I wanted to write about, but I thought to myself that won’t be of any interest to anyone, so I didn’t write them. But in the end here we are, It thought maybe I would write something that would add some value to someone somewhere, and that would be worth reading instead of reading it from ChatGPT, Claude, or any of their derivatives.

So here we go. I’m worried. I’m worried for us.

I don’t want this to be yet another AI doomer article. I do believe AI can and will automate software engineering once we manage to solve the problem of ensuring code correctness with 5-nine reliability at scale. We will get there, it’s not about if but when.

I’m not worried about AI taking over as the paperclip maximizer. I’m worried about us humans losing our ways. Losing the simplicity of appreciating another human’s presence, giving a smile to someone without expecting anything in return, feeling someone’s skin and looking into his or her eyes as you shake hands. I’m worried that through addictive apps and AI interactions we are going to atrophy our ability to empatize with other living beings to the point of becoming a society of lonely self-absorbed narcissists with culturally ingrained sociopathic tendencies.

Solving the Prompt Management Problem

As of April 2025, the frontier has moved to AI Agents and Agentic AI. And yet, the ChatGPT interface remains impractical to organize past conversations or make sense of one’s most used prompts.

I find myself storing my prompt templates in various text files, google docs, or copy-pasting from previous prompts. It’s all a big mess and a waste of time. So I needed a tool to management my prompts.

To solve this problem I’ve created Prompt Library, a web-based prompt library and composer. The tool lets you create, edit, search, and tag your prompts, insert variables and placeholders, etc. All data is stored locally for more privacy, and you can export your prompts as a JSON file. You can check out the full list of feature on the GitHub project page.

Future developments will include a way to store the history of changes made to a prompt, and compare different versions, and possibly to be able to store “prompt paths,” that is to say how to represent a graph of prompts used in sequence for more complex tasks.

You can check out the tool here: https://github.com/goossaert/prompt-library

If you do try it and have feedback, leave a comment below

Screenshot

My Takeaways on Vibe Coding

I recently OpenAI’s o3-mini-high model to generate a small web application, which I have published on GitHub.

My use case was simple: I wanted a way to send ChatGPT conversations and research sessions to my e-reader so I could read them while avoiding the impact of blue light from screens. I use the application pocket to send web pages to my ereader, but OpenAI conversations are behind a login wall, and therefore cannot be saved via the usual Pocket web extension.

First, I asked the model for different approaches to solve this problem, and it gave me several options, including one in which as a user I would select text from a page, and click on a bookmarklet that would send the text to an API which would save that text in a database. This is the option that seemed the best so I stuck with it.