Be the one who cares

With LLM fueled agents now talking over coding duties all around the software industry, you could ask yourself what your new role as a software developer is in this agentic world. There is no doubt that these agents can program pretty well by now. And they are fast, much faster than any mere human can hope to be. So how can we humans still add value to the process?

I think that developing software development has two major aspects:

  1. Deciding what the program should do.
  2. Turning that decision into a mutable and an executable artifact: a.k.a. Coding

Everyone who ever tried agentic coding can probably confirm that they are extremely good at writing the code, you just have to prompt them correctly. You could argue that “what the program should do” always arises directly from the stakeholders requirements, but I think that’s wrong.

The stakeholders usually care about having their or their clients’ problems solved. They might know the way to solve them, or think they do. That solve is then presented as the requirement. If this was all there is to it, go on and throw that solve into a prompt and be done with it.

But real software that people use day by day is not like that. Each new feature needs to be evaluated against the existing software. This involves weighing it against the existing software on many levels. How does it make sense from a UX perspective? Does it contradict or overlap any other features already in the product? Is the added code complexity proportional to the value it delivers to the customer?

A simple nice-to-have improvement might mess up the code for years to come and make the code harder to maintain. For both humans and agents. Agents will happily implement such bad ideas anyway.

Implementation cost sure has gone down with agents but I think that just pushes back a very important feedback mechanism: engineers that have to implement a feature that doesn’t work well with the product would ideally recommend against bad ideas, or less ideally fail to deliver a proper implementation. Either way is important feedback, which is sourced from the whole software stack. With this feedback, we can make products that can get better on each iterations, without it, they might tick more boxes, but will probably just become worse over time.

So you have to be the one who cares and gets this feedback. Who cares about the product you’re making. Who cares about the problems that product is solving. Who cares about the people use this product. Who cares about the technology that humans and agents have to handle to further evolve it. How features interact and thus products are built, is still a very technical affair and sometimes the little nuts and bolts matter.

We have enough shitty products. Please use this new power to make better products and tech that you and other people care about. I believe there is a market for that.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.