January 2026

Do we still have time for human code review?

I’m increasingly convinced that in the near future, we software developers won’t be looking at our production code anymore. It’s simply not feasible to have agents spit out line after line of (mostly?) working code, but then have our brains be the bottleneck while getting dizzy reading huge amounts of code. I don’t know how I feel about this yet, because I take great professional pride in my software, from the big architectural decisions down to the details. Where does this leave software development?

I really enjoy API development. Getting an interface just right so it’s easy to use it right is just so satisfying. (I spent a lot of time on the super simple gomponents Go API, for example.) Increasingly, that doesn’t matter anymore. Is your network API an undocumented, verbose GraphQL mess with weird quirks? No problem, the agent will figure it out anyway. It would be easier if that were not the case, even for the agent, but it definitely doesn’t matter as much anymore.

But I think I want to try to let go of that. Even though I thoroughly enjoy the craft of building software, as a professional, what really matters is that I can produce software that computers can run to provide value in the real world, often for a business outcome. The software itself is just an artifact that’s needed for the goal of producing value, not the goal itself.

Of course, quality still matters! We want to produce working, reliable, robust software. But it doesn’t have to be “beautiful” or “elegant” or any of the other adjectives we stick on our programming language babies. It’s here to do work. Of course, it’s still possible to write software that way, but I’ll leave it to the times when I want to enjoy myself, much like with my other hobbies.

But what still matters in software development? §

Obviously, it’s not all up in the air. A lot of good development practices still matter. I see the following as particularly important.

Data models §

Getting the data model right for any application always has been key for me, and that’s still true, because that’s the window into the real world. LLMs and agents can definitely help with that (I really like my brainstorm skill for that), but in the end, there’s a lot of experience, context, and tacit knowledge at play here.

Tests §

Tests are more important than ever, and creating good tests lets you work insanely fast on other aspects of your codebase. Does everything still work? Read the code? Nah. Run the tests, and if everything passes, you’re good. Test as much as you can, automate as much as you can, give your agents the ability to read, write, and run tests easily, and iterate and review.

Fast tooling §

Okay, this one isn’t a development practice, more of a development, I dunno, ingredient.

It’s no secret that I’m a big fan of Go. One of the things I really enjoy with Go is the focus on fast tooling. The compiler is fast, test runs are fast, everything is fast. This matters a lot when iteration cycles can then become much faster. Everything just benefits from things being fast. (I really enjoy Dan Luu’s posts on this topic, for example this one on input lag.) So then our bots can become faster, create more value, everything becomes better.

“Are you crazy?” §

Am I crazy? I’m not sure. It definitely goes against my instincts to not read production code! But it’s not a law of nature that all code has to be read. It’s just something we decided was a good idea because it made our software better. But if that’s no longer the case, or it’s simply not feasible anymore because of the quantity of code, we’ll have to think of something better. We’re good at that in our profession, evolving methodology and experimenting.

Maybe the next intermediate step is only reading test code? Making sure edge cases are covered, we’re trying out relatively new methods like fuzz testing, that sort of thing, and then treating the object under test as a black box?

I don’t know. It’s a wild world right now, and I like experimenting. I obviously have obligations to my clients (don’t worry, I’ll still both write and read code myself!), but things are changing fast. Hang on for the ride!

Oh, and happy new year. :D

A picture of me, Markus.

I’m Markus, an independent software consultant. 🤓✨

See my services or reach out at markus@maragu.dk.

Subscribe to this blog by RSS or newsletter: