LLMs in Software Engineering: 2025 Reality Check

The hype vs reality: reflections from a developer with 30 years of experience

This morning I came across a talk that made me reflect quite a bit about all this fuss surrounding AI and software development. The speaker, with a healthy dose of skepticism, does a “reality check” on all the grandiose claims we’re hearing everywhere.

The complete talk that inspired these reflections. It’s worth watching in full.

The numbers that don’t add up

I was especially struck when he mentions that statement from Microsoft’s CEO saying “30% of all code is written with AI”. My first reaction, like the speaker’s, was: what exactly does that mean?

After nearly 30 years in this field, I’ve learned to be skeptical of statistics without context. Is it production code? Test snippets? Glorified autocompletion? As the speaker says, it’s clear that a CEO is “selling their product”, and that’s where my antennas go up.

The perspective from the trenches

What I liked most about the talk is that it’s neither alarmist nor excessively optimistic. As a developer who has seen many “technological revolutions” pass by, I value this balanced perspective.

The speaker makes an excellent point: things we assumed were expensive or difficult have suddenly become ridiculously cheap. This reminds me of when the cloud appeared, or when web frameworks became mainstream. The change isn’t so much in whether the technology is “better”, but in what problems we can now afford to address.

My personal experience with LLMs

In my day-to-day at Carto, I’ve started experimenting with these tools. Not as a replacement for thinking, but as what they really are: very powerful tools for specific tasks.

My premises continue to work:

  • “Possible” is “Economically viable” - And now LLMs have changed what’s economically viable
  • No good solution/technology for everything exists - This includes LLMs
  • For every minute of planning, 2 minutes less of development - This is where I see the most value in AIs, in the analysis and planning phase

What has really changed

What resonates most with me from the talk is his conclusion: we need to experiment more. As he says, we should do more what startups do: test what works and what doesn’t, understand what’s cheap and what’s expensive in this new landscape.

In my experience:

What works well:

  • Unit test generation
  • Documentation of existing code
  • Legacy code refactoring
  • Complex log analysis
  • Rapid API prototyping

What still doesn’t convince me:

  • Complex system architecture
  • Critical security decisions
  • Performance problem debugging
  • Anything requiring deep business context

The Swiss army knife strikes again

As I always say, the perfect Swiss army knife doesn’t exist. LLMs are another tool in our arsenal, very powerful for certain tasks, but not the magic solution for everything.

What they have done is radically change the cost of certain operations. As a developer, this excites me because it means I can afford to do things I couldn’t justify economically before.

Final reflection

I’ll take away the message from the talk: things are changing and we need to experiment more. But from experience, knowing that each new technology promises to be the definitive one, and in the end it just changes what problems we can solve efficiently.

My advice? Experiment, but with your feet on the ground. Test these tools in your projects, but with the same rigor you’d apply to any other new technology. And remember: errors and problems always happen, you always have to take that into consideration.

At the end of the day, we’re still developers. Now we just have some new tools in the box.


What do you all think? Have you experimented with LLMs in your projects? I’d love to hear your experiences in the comments.