There is so much debate online about the usefulness of LLMs. While some people see giant leaps in productivity, others don’t see what the fuss is about. Every relevant HackerNews post now comes with a long thread of folks arguing back and forth. I call it the new Great Divide.
I have a theory about this divide. The theory is that, on average, an LLM’s impact on someone’s day-to-day job largely depends on their level, and it follows a really interesting curve. In this post, I’ll explain the reasoning behind this idea.
The Curve
Let me present you the curve of LLM usefulness for different engineering levels.
Is the curve confusing? Well, let me elaborate.
The impact on different levels
Junior Engineer
You’re just starting your work in a new codebase and you’re still piecing together a solid mental model of how things actually work. Here, an LLM is a lifesaver. Stuck on an error? An LLM can give you an explanation that makes sense. Need to write some code for a minor feature, or do a library upgrade? All of this can be done much faster with an LLM.
An LLM can already feel like it can do a huge part of your job for you. That’s why I believe there’s a real danger zone here. If you lean on an LLM as a shortcut to get unstuck in the same way as you’d reach out to your more senior colleagues when you’d otherwise have to ask – then fine. In the real world, chances are you won’t have the luxury of avoiding LLMs even if you wanted to. However, if you end up copy-pasting code back and forth between your IDE and the LLM without truly understanding what’s happening or why, then advancing your engineering skills will become a serious challenge.