메뉴
HN
Hacker News • 62일 전

10배가 아닌 2배의 혁신: 2026년 LLM 코딩 환경의 현실

IMP
8/10
핵심 요약

2026년 시점에서 LLM은 코드 작성 및 테스트 자동화 등 명확한 목표가 주어진 작업에서 뛰어난 생산성(약 2배)을 보여줍니다. 하지만 코드 구조의 유지보수성이나 문서화와 같은 본질적이고 주관적인 판단이 필요한 영역은 여전히 인간의 개입이 필수적입니다. 결국 앞으로의 생산성 향상은 모델 자체의 발전보다는 현재의 LLM 능력에 맞춘 개발 워크플로우와 도구(Tooling)의 고도화에서 비롯될 것입니다.

번역된 본문

지난 6개월 동안 제가 제 자신에 대해 깨달은 것이 있다면, 만약 해리 포터가 실화이고 마법이 실재한다는 것을 알게 되더라도 제 반응은 대략 이럴 것이라는 점입니다. "오, 흥미롭네. 근데 이 마법이라는 게 단위 테스트(unit tests) 작성보다 조금이라도 더 복잡한 일에 쓸모가 있긴 한 건가?" LLM은 확실히 그 유용성의 한계를 넘어섰습니다. 다만 2026년 7월 현재, 그리고 오직 제 직접적인 관찰에만 기반하자면, 여전히 근본적인 한계가 존재하므로 '소프트웨어 엔지니어'라는 직업이 멸종할 경우를 대비해 제가 목공(m woodworking)을 백업 계획으로 삼기에는 아직 이르다고 생각합니다. LLM이 왜 유용해졌는지에 대한 제 정신적 모델을 기반으로 볼 때, 이러한 상황이 조만간 바뀔 것 같지는 않습니다.

제 가설은 이렇습니다. 2026년 LLM 도입률이 가파르게 증가한 것은 주로 LLM이 자동화된 피드백 루프(automated feedback loops)에서 효과적으로 작동할 만큼 신뢰할 수 있게 되었기 때문입니다. 이제 이 한계점을 넘어섰기 때문에, 모델 성능이 추가적으로 향상된다 해도 이전에 비해 미치는 생산성의 영향은 훨씬 적을 것입니다. 비유하자면, 계단을 오르려면 한 번에 적어도 한 칸 이상 딛고 올라갈 수 있을 만큼 키가 커야 합니다. 하지만 한 번에 두세 칸씩 오를 수 있을 만큼 키가 아주 크다고 해서 그것이 중요하게 작용하진 않는 것과 같습니다.

LLM이 코딩에 유용한 이유는 "X를 수행하는 버튼을 만들고, 그 버튼을 클릭해서 제대로 X를 수행하는지 확인해 줘"라고 지시할 수 있기 때문입니다. LLM은 헛돌지 않고 의미 있는 단위의 작업으로 나누어 목표를 향해 반복(iterate)할 수 있으며, 인간이 "응, 이제 버튼이 X를 수행해"라고 말할지 아니면 "아니, 아직 버튼이 X를 수행하지 않아"라고 말할지 신뢰할 수 있을 만큼 정확하게 예측할 수 있습니다. 따라서 LLM은 개발자가 명시적으로 제공하는, 쉽고 객관적으로 검증 가능한 인수 기준을 충족하는 코드를 작성하는 데 매우 유용합니다. 그리고 이것은 정말 놀랍고, 엄청나며, 삶을 바꿔놓을 만큼의 혁신입니다. 어쩌면 생산성을 정확히 2배(2x) 끌어올려 줄 수도 있죠.

하지만 이 분야의 작업에는 여전히 중요한 질문들이 남아있으며, 제 생각에 현재로서는 LLM이 그에 대한 답을 유용할 만큼의 정확도로 예측하지 못합니다. 예를 들면 다음과 같습니다. "이 코드의 구조를 좀 더 유지보수하기 쉽게 만들 방법이 있을까?" "이 문서화에 올바른 정보가 포함되어 있고, 불필요한 정보는 빠져 있는 걸까?" 그렇기 때문에 저는 주로 LLM을 사용해 코드의 초안(r rough draft)을 작성한 뒤, 전반적인 구조가 마음에 들 때까지 직접 많은 부분을 수정하고 다듬습니다. 개별 코드 줄이나 함수의 가독성 측면에서는 조금 허술했던 것 같습니다. (제 동료들이 이 글을 읽을 경우를 대비해 두둔할 여지를 남겨두어야겠네요). 그리고 줄 수준의 가독성을 신경 쓰지 않았음에도 불구하고, 저는 여전히 그 반복적인 수정 과정이 얼마나 오래 걸릴지 자주 과소평가하곤 합니다. 예전에는 작동하는 구현체(implementation)가 나오면 작업의 80%가 끝났다는 뜻이었지만, 이제는 그게 20% 정도 끝난 것에 불과합니다.

문서화의 경우, 다음과 같은 간단한 지시가 LLM의 산출물을 크게 개선한다는 것을 알게 되었습니다. "절대 README, 독스트링(docstrings) 또는 주석을 작성하지 마. 그건 내가 나중에 직접 쓸 테야." 네, 정말로 이 말을 진지하게 하고 있는 겁니다. 이러한 한계들에 대해 LLM이 작년에 비해 엄청나게 발전했으므로 내년에도 더 발전하여 더 나은 문서와 유지보수 가능한 코드를 작성하게 될 것이라고 반응하는 것이 잠재적으로 합리적일 수 있습니다. 하지만 제 '계단 가설'을 받아들인다면, 그런 반응은 훨씬 확신할 수 없게 됩니다. 높은 계단을 오를 수 있다고 해서 수영을 할 수 있다는 뜻은 아니니까요.

따라서 제 현재의 생각은, 단순한 모델의 추가적인 성능 향상만으로 우리를 2025년이라는 암흑기에 비해 10배(10x)의 생산성 증가로 이끌어갈 가능성은 희박하다는 것입니다. 대신 예측 가능한 미래의 대부분의 생산성 향상은 오늘날 우리가 이미 가지고 있는 모델의 역량을 중심으로 업계가 도구와 워크플로우를 재정비(retooling)하는 과정에서 비롯될 것이라 봅니다. 저는 이 분야에서 얼리 어답터가 아닙니다. 지금까지 저는 LLM을 그저 Stack Overflow의 대체재 겸 화려한 검색 엔진으로 사용하던 시기(RIP)에서, 인터랙티브 챗봇을 통해 코딩을 하게 된 시기, 그리고 제가 원하는 최종 결과물에 대해 선언적 명세(specifications)를 작성해 주는 단계까지 발전해 왔습니다. 또한 30초마다 LLM이 무언가를 실행할 때마다 권한을 부여해야 하는 번거로움을 피하기 위해 샌드박스 환경(sandboxed environments)을 구축하는 것이 가장 필수적(MVP)이었습니다. 이와 관련된 워크플로우와 도구들을 다듬기 위해서는 아직도 많은 작업이 필요합니다. 저는 또한 약간의 감(Vibe)으로 코딩을...

원문 보기
원문 보기 (영어)
2x, not 10x: coding with LLMs in 2026 Something I've learned about myself over the past 6 months is that if I ever discover Harry Potter is nonfiction and magic is real, my reaction will be approximately "OK that's interesting, but is this magic stuff good for anything more complex than writing unit tests?" LLMs have certainly passed that threshold of usefulness, though as of July 2026 and based solely on my own direct observations, they still have fundamental limitations such that I have not yet taken up woodworking as a contingency plan for "Software Engineer" becoming an extinct profession. Based on my mental model of why LLMs have become useful, I'm not sure that will change any time soon. Here's my hypothesis: LLMs' increased rate of adoption in 2026 is largely due to them becoming reliable enough to run effectively in automated feedback loops. Now that they've passed that threshold, further improvements in model performance will have a much smaller impact on productivity than they have had previously. An analogy is that to walk up a set of stairs you need to be tall enough to get up at least one step at a time, but being so tall you can take two or three steps at once matters a lot less. LLMs are useful for coding because you can tell them "make a button that does X, then click the button and make sure it does X." They're able to iterate toward that goal in meaningfully sized steps instead of thrashing, and they're able to reliably predict when a human would say "yes the button now does X" or "no the button does not yet do X." As such, LLMs are useful for producing code that meets easily and objectively verifiable acceptance criteria which you provide explicitly. And that is incredible. Stupendous. Life-changing. Maybe even a 2x improvement. However, there are still important questions in this line of work for which the answers cannot yet be predicted by an LLM with sufficient accuracy to be, in my opinion, useful. Such as: "Is there a more maintainable way to structure this code?" "Does this documentation include the right information and omit extraneous information?" As such, I use LLMs mainly to produce a rough draft of the code which I then iterate on heavily, at least until I like the general structure. I've been a little sloppy when it comes to readability of individual lines/functions. (I have to include this hedge in case my coworkers read this post). And even with the line-level sloppiness, I still consistently underestimate how long that iteration is going to take. A working implementation used to mean a task was 80% done; now it's more like 20%. As for documentation, I've found this simple instruction to vastly improve LLMs' output: Never write READMEs, docstrings, or comments. I will write those myself later. And yes, I really mean this. A potentially reasonable reaction to these limitations would be to say "LLMs have improved a huge amount over the past year and thus future improvements over the next year will likely make them much better at writing good documentation and maintainable code." But if you accept my staircase hypothesis, that reaction is a lot less certain. Being able to climb up a tall staircase doesn't mean you can swim. So my current guess is that further model improvements alone are unlikely to get us to a 10x productivity boost over the dark ages of 2025. Instead I think most of the productivity gains in the foreseeable future will come from the industry retooling around the model capabilities we already have today. I'm not an early adopter in this space. So far I've gone from using LLMs as a glorified search engine/Stack Overflow replacement (RIP), to having them code via interactive chat, to writing declarative specifications of the end state I want. Sandboxed environments have also been an MVP so that I don't have to grant the LLM permission to do something every 30 seconds. There's lots of work to be done in refining the workflows and tooling around this stuff. I've also done some vibe coding (which I'm defining as "generating code without reading/understanding it all") for non-work / non-production things. I'm interested to explore that area more outside of work, and of course plenty of other people have been enthusiastically forging ahead. It's hard to know how viable that approach can be in the long term since there hasn't been a long term yet. But you know, maybe there's something there; maybe certain test practices/tooling and such will make it safe to rely on black-box LLM code even for operating critical infrastructure. Maybe we can get to a 10x improvement by routing around LLMs' fundamental weaknesses. But in the mean time, I'll stick with my hand - crafted READMEs . Published 25 Jul 2026