AI 기술은 더 이상 백엔드에서만 쓰이는 기술이 아닙니다. 이제는 소프트웨어의 구조 자체를 바꾸고 있습니다. 최근 Andrej Karpathy가 YC AI School에서 발표한 강연 ‘Software is Changing (Again)’은 이 변화를 잘 보여줍니다. 전통적인 소스코드 중심의 Software 1.0에서, 데이터 기반의 Software 2.0을 거쳐, 이제는 대형 언어 모델(LLM)을 중심으로 하는 Software 3.0 시대로 접어들고 있습니다.
이 블로그에서는 Karpathy의 강연을 바탕으로 Software 3.0이 무엇인지, 왜 중요한지, 그리고 실제 현장에서 어떤 변화가 일어나고 있는지를 쉽게 풀어 설명합니다.
소프트웨어는 어떻게 변해왔는가?
Karpathy는 소프트웨어의 진화를 세 가지 단계로 설명합니다.
Software 1.0 – 사람이 직접 작성한 코드
우리가 흔히 알고 있는 전통적인 개발 방식입니다. 개발자가 명확한 로직과 규칙을 코드로 작성하고, 컴파일하고, 배포하는 방식입니다.
Software 2.0 – 데이터를 통해 학습된 신경망
딥러닝 모델이 대표적입니다. 코드보다 데이터가 핵심이며, 모델은 수많은 데이터를 바탕으로 자동으로 규칙을 학습합니다. 개발자는 코드를 쓰기보다는 데이터를 설계하고, 모델을 튜닝합니다.
Software 3.0 – 자연어로 작동하는 LLM 기반 시스템
이제는 자연어로 작성된 프롬프트가 하나의 ‘프로그램’처럼 작동합니다. 대형 언어 모델(LLM)은 단순한 도구가 아니라, 하나의 플랫폼, 심지어는 운영체제처럼 동작합니다. 코드를 짜지 않고도 자연어로 명령을 내리고, 작업을 자동화할 수 있는 시대가 열린 것입니다.
자연어가 새로운 프로그래밍 언어가 된다
Karpathy는 “이제 영어가 새로운 프로그래밍 언어”라고 말합니다. 실제로 GitHub에는 영어와 코드가 혼합된 새로운 형태의 커밋이 늘고 있으며, LLM을 통해 누구나 앱을 만들 수 있는 환경이 조성되고 있습니다.
예를 들어, Karpathy는 Swift 언어를 몰랐지만, 하루 만에 LLM의 도움을 받아 iOS 앱을 만들고 배포했습니다. 더 이상 프로그래밍 언어를 학습하는 것이 장벽이 되지 않는 시대입니다.
LLM은 새로운 운영체제다
LLM은 단순한 API가 아닙니다. 다양한 앱과 도구가 돌아가는 중심 플랫폼으로 진화하고 있습니다. Karpathy는 이를 과거 메인프레임 컴퓨터가 클라우드 기반 중앙집중형으로 작동했던 구조에 비유합니다.
향후에는 각 개인이 자신만의 LLM을 로컬에서 실행하거나, 특정 목적에 맞게 최적화된 LLM을 활용하게 될 가능성도 제시합니다. 지금은 초기 단계이지만, 장기적으로는 LLM이 ‘운영체제’처럼 기능하는 시대가 올 수 있다는 것입니다.
LLM의 한계와 우리가 고려해야 할 점
하지만 LLM은 만능이 아닙니다. 몇 가지 중요한 제약이 존재합니다.
- 헐루시네이션(허위 정보 생성)
- 작업 맥락(working memory)의 한계
- 보안 취약성, 프롬프트 인젝션 등의 공격 위험
LLM은 거대한 지식과 기억력을 갖추었지만, 문맥을 놓치거나 현실과 다른 내용을 생성할 가능성이 있습니다. 때문에 실제 업무에서 사용할 때는 빠른 검증 루프와 사람의 감시가 필요합니다.
'부분적 자율성'과 인간-LLM 협업
완전한 자동화가 아니라, ‘부분적 자율성’이 현재 가장 현실적인 방향입니다. 사용자는 LLM에게 일부 작업을 맡기되, 중요한 결정이나 검증은 직접 수행합니다.
예를 들어, Cursor나 Perplexity와 같은 툴은 사용자가 원하는 정도로 자동화 비율을 조절할 수 있도록 ‘자율성 슬라이더’를 제공합니다. GUI를 통한 감사와 피드백 루프를 통해 신뢰성을 확보할 수 있습니다.
Vibecoding: 누구나 만드는 소프트웨어
최근 개발자 커뮤니티에서는 ‘Vibecoding’이라는 트렌드도 나타나고 있습니다. 프로그래밍 언어에 능숙하지 않아도, LLM의 도움으로 앱을 만들고 프로토타입을 완성하는 문화입니다.
하지만 실제 서비스를 런칭하려면 인증, 결제, 배포 등 아직도 수작업이 필요한 영역이 많습니다. 이 과정도 LLM 기반 에이전트가 대행할 수 있도록 ‘에이전트 친화적’으로 소프트웨어와 문서를 재설계하는 작업이 요구되고 있습니다.
문서와 인프라도 변하고 있다
기존 문서는 사람 중심으로 설계되어 있어, 에이전트가 바로 활용하기 어렵습니다. 예를 들어 클릭해야 하거나, 복잡한 UI를 요구하는 형태는 LLM에 적합하지 않습니다.
Stripe, Versell 같은 기업은 이미 문서를 Markdown 기반으로 정리하거나, curl 명령 등으로 구성해 에이전트 친화적인 구조로 바꾸고 있습니다. GitHub Ingest, DeepWiki 같은 도구도 코드와 문서를 LLM이 이해할 수 있도록 자동 변환해주는 역할을 합니다.
앞으로 무엇을 준비해야 할까?
지금은 기술이 빠르게 바뀌는 격변기입니다. 기존 소프트웨어를 다시 쓰고, 새롭게 설계해야 할 시기입니다. 앞으로 10년간은 ‘자율성 슬라이더’를 점진적으로 높여가며, 사람과 AI가 협력하는 방식이 주류가 될 것입니다.
개발자는 더 이상 코드만 잘 짜는 사람으로 머무르지 않아야 합니다. LLM을 이해하고, 에이전트가 잘 작동할 수 있도록 구조화된 문서와 환경을 설계할 수 있어야 합니다.
Karpathy의 말처럼, LLM은 단순한 툴이 아닙니다. 소프트웨어의 판 자체를 바꾸는 플랫폼입니다. 우리가 해야 할 일은 이 거대한 변화 앞에서 두려워하지 않고, 협업의 방법을 익히고, 시스템을 재설계하며 AI와 함께 나아갈 준비를 하는 것입니다.
지금은 코드 한 줄도 쓰지 않고 앱을 만드는 시대입니다. 당신의 개발 방식, 당신의 문서, 당신의 인프라가 이 새로운 세계에 얼마나 준비되어 있는지 돌아볼 때입니다.
https://www.youtube.com/watch?v=LCEmiRjPEtQ
'잡학다식 > IT 컬럼' 카테고리의 다른 글
Zed 디버거, 왜 개발자들이 주목하는가? (0) | 2025.06.20 |
---|---|
ESLint보다 100배 빠른 린터, Oxlint 1.0 출시! 성능과 실용성 모두 잡았다 (0) | 2025.06.18 |
IDE는 죽지 않았다. 다만, AI가 그 자리를 넘보고 있다: Agentic AI가 바꾸는 개발의 미래 (0) | 2025.06.18 |
게임 서버부터 AI 에이전트까지, 진짜 서버리스를 원한다면? Rivet을 주목해야 하는 이유 (0) | 2025.06.14 |
알림부터 보안까지, Android 16으로 바뀌는 일상 (0) | 2025.06.13 |