Why LLMs Can’t Really Build Software

One of the things I have spent a lot of time doing is interviewing software engineers. This is obviously a hard task, and I don’t claim to have a magic solution; but it’s given me some time to reflect on what effective software engineers actually do. The Software Engineering Loop When you watch someone who knows what they are doing, you’ll see them looping over the following steps: Build a mental model of the requirements Write code that (hopefully?!) does that Build a mental model of what the code actually does Identify the differences, and update the code (or the requirements). There are lots of different ways to do these things, but the distinguishing factor of effective engineers is their ability to build and maintain clear mental models. How about LLMs? To be fair, LLMs are…