Software 1.0 → 2.0 → 3.0
AI Native 시대, 소프트웨어는 어떻게 진화하는가?
https://drive.google.com/file/d/1S9KFntiyLJl7ysNcEv8buoENpkMbh4xb/view?usp=sharing
소프트웨어 산업의 전환점
지난 70년간 소프트웨어는 세 번의 큰 진화를 경험했다.
- Software 1.0 : 사람이 코드를 작성한다.
- Software 2.0 : 데이터로 모델을 학습시킨다.
- Software 3.0 : 자연어로 소프트웨어를 만든다.
오늘 우리가 배우는 바이브코딩은
Software 3.0 시대를 대표하는 새로운 개발 방식이다.
Software 1.0 — 어드민과 앱 개발자의 시대
특징
- 사람이 직접 알고리즘 작성
- 절차 중심 개발
- 조건문과 반복문 기반
- 컴파일 후 실행
대표 기술
- C
- C++
- Java
- Python
- JavaScript
개발 방식
문제 분석
↓
설계
↓
코딩
↓
테스트
↓
배포
핵심
사람이 모든 규칙을 직접 작성한다.
Software 2.0 — 데이터로 로직을 구현하는 시대
대표 개념
Machine Learning
Deep Learning
Neural Networks
개발 방식
데이터 수집
↓
모델 학습
↓
평가
↓
추론
대표 사례
- 이미지 인식
- 음성 인식
- 추천 시스템
- 자율주행
- 번역
핵심
규칙을 사람이 작성하지 않고
데이터를 통해 AI가 학습한다.
Software 1.0 vs Software 2.0 비교
| 구분 | Software 1.0 | Software 2.0 |
|---|---|---|
| 프로그램 | 코드 | 신경망 모델 |
| 작성자 | 개발자 | AI 모델 |
| 입력 | 알고리즘 | 데이터 |
| 수정 | 코드 변경 | 재학습 |
| 강점 | 정확성 | 패턴 인식 |
중요한 변화
Software 2.0은 Software 1.0을 대체한 것이 아니라
서로 협력하는 형태로 발전하였다.
Software 3.0 — 자연어 기반의 프로그래밍 시대
AI Native 시대
대규모 언어모델(LLM)은
자연어를 이해하고
코드를 생성하며
도구를 사용할 수 있다.
개발 흐름
아이디어
↓
Prompt
↓
LLM
↓
Code
↓
Application
핵심
자연어가 새로운 인터페이스가 된다.
Software 3.0 시대로의 급격한 전환
최근 AI 기술의 발전
- GPT
- Claude
- Gemini
LLM은
- 코드 생성
- 코드 리뷰
- 테스트 생성
- 문서 작성
- 리팩터링
- Tool Calling
- Agent 실행
까지 수행한다.
이제 AI는 단순한 챗봇이 아니라
함께 개발하는 동료(Developer Agent)이다.
오랫동안 유지돼온 개발자의 역할도 변화
Software 1.0
Programmer
↓
Software 2.0
ML Engineer
↓
Software 3.0
AI Native Builder
새로운 핵심 역량
- 문제 정의
- Context Engineering
- Agent 설계
- Workflow 설계
- 검증 및 품질 관리
Software 3.0의 핵심 키워드
- Prompt Engineering
- Context Engineering
- AI Pair Programming
- Function Calling
- MCP
- Agent
- Multi-Agent
- RAG
- Memory
- AI Native Application
이 과정에서 하나씩 직접 구현하게 된다.
바이브코딩: Software 3.0 개발 방법론
기존 개발
사람
↓
코드 작성
↓
애플리케이션
바이브코딩
사람
↓
문제 정의
↓
Context 제공
↓
AI Agent
↓
코드 생성
↓
검증
↓
서비스 완성
개발자의 역할은
‘코드를 많이 작성하는 사람’에서
‘AI와 함께 문제를 해결하는 사람’으로 변화하고 있다.
바이브코딩 디스커버리 여정
Software 3.0 이해
↓
Prompt & Context
↓
Cursor
↓
Claude Code
↓
Codex
↓
MCP
↓
RAG
↓
Memory
↓
Agent
↓
Multi-Agent
↓
AI Native SaaS
↓
실전 프로젝트
결론: Course Mission
“AI를 사용하는 개발자”를 넘어
AI와 함께 소프트웨어를 설계하고 구현하는 AI Native Builder가 되는 것.