사람들은 계속 AI가 5년 안에 프로그래머를 쓸어버릴 거냐고 묻는다. 나는 그 질문이 이미 한 박자 늦었다고 생각한다. 더 추한 일은 더 아래쪽에서 벌어지고 있다. 나는 자꾸 아주 노골적인 현실 장면으로 돌아가게 된다. 작은 소프트웨어 회사 하나가 평범한 업무용 앱을 만들 때 예전에는 제품 담당자, 디자이너, 프런트엔드 두 명, 백엔드 한 명, QA를 붙였다. 그런데 사장이 시니어들에게 지루한 부분은 AI를 쓰라고 강제하기 시작했다. 데이터베이스 모델이 금방 나왔다. CRUD 엔드포인트가 금방 나왔다. 폼 화면이 금방 나왔다. 테스트 뼈대까지 금방 나왔다. 주니어 일이 담당하던 큰 덩어리가 그대로 사라졌다.
바로 이 부분을 아직도 너무 많은 사람이 분명하게 말하지 않으려 한다. AI가 주로 죽이고 있는 건 프로그래밍이라는 발상 자체가 아니다. 오래된 훈련장이다. 관리자 대시보드, 내부 도구, 보일러플레이트 API, 폼 중심 인터페이스, 테스트 스캐폴딩, 마이그레이션 로직, 그리고 실제 시스템이 어떻게 돌아가는지 가르쳐주던 그 지루하고 반복적인 티켓들. 그 층이 AI에게 먹히기 시작하는 순간, 직업이 하루아침에 사라지는 건 아니어도 사다리는 사라진다.
원래 초보자의 길은 화려하지 않았다
누구도 계정 설정 화면이나 또 하나의 내부 승인 대시보드를 만들고 싶어서 소프트웨어 업계에 들어오지는 않는다.
하지만 많은 사람은 거기서 배웠다.
다들 이런 것들을 처리하면서 익혔다.
- 지루한 티켓
- 반복적인 버그 수정
- CRUD 화면
- 검증 규칙
- API 연결 작업
- 관리자 패널
- 테스트 정리
- 아무도 만지고 싶어 하지 않는 문서
그 일은 인상적이지 않았다. 그래도 가치가 있었다.
초보자가 감당 가능한 범위에서 실수하게 해줬고, 반복을 줬고, 튜토리얼 밖으로 나오면 실제 소프트웨어가 얼마나 지저분한지 가르쳐줬다.
그래서 지금 이 순간이 더 위험하다. AI는 가장 화려하지 않은 층을 가장 세게 덮치고 있다. 그리고 그 층이야말로 좋든 싫든 도제 시스템 자체였기 때문이다.
경제성은 아주 빠르게 잔인해진다
이게 이렇게 빨리 움직이는 이유는 모델이 마법 같아서가 아니다. 계산이 잔인해서다.
시니어 엔지니어가 프롬프트만으로 다음 같은 것의 그럴듯한 첫 버전을 뽑아낼 수 있다면
- 백오피스 대시보드
- 엔드포인트 묶음
- 권한이 걸린 폼
- 마이그레이션 스크립트
- 유닛 테스트 뼈대
주니어 개발자가 적응하고, 질문하고, 손으로 첫 버전을 만드는 데 걸리던 시간 안에 그게 나온다면, 경영진은 철학 논쟁을 보지 않는다. 비용 압축을 본다.
그래서 나는 “AI는 아직도 실수하잖아”라는 위안 섞인 말을 믿지 않는다. 물론 실수한다. 하지만 그건 중요한 기준이 아니다. 시니어가 주니어를 멘토링하는 것보다 AI 결과물을 교정하는 편이 더 빠르다면, 주니어 자리는 방어하기 훨씬 어려워진다.
그래서 작은 팀이 갑자기 더 작아 보인다
사람들은 이게 이미 얼마나 구체적인지 자주 놓친다.
아주 흔한 프로젝트를 생각해 보자. 고객이 폼, 사용자 역할, 리포팅, 몇 가지 연동이 들어간 내부 웹앱을 원한다. 몇 년 전만 해도 그건 구현의 한 덩어리를 주니어에게 넘긴다는 뜻이었다. 일은 예측 가능했고 시간도 많이 먹었으니까.
지금은 대화가 바뀐다.
예전에는
- “폼은 주니어가 만들게 하자”
- “API 뼈대는 주니어가 세우게 하자”
- “테스트 세팅은 주니어가 맡자”
였다면, 지금은
- “첫 버전은 시니어가 AI로 뽑자”
- “보안과 비즈니스 로직만 리뷰하자”
- “더 적은 사람으로 더 빨리 내보내자”
가 된다.
이건 이론이 아니다. 작업 흐름의 변화다. 그리고 작업 흐름이 이렇게 바뀌면 인원 수도 같이 바뀐다.
직업은 살아남는다. 하지만 초보자 차선은 아니다
나는 사람들이 이 구분을 더 자주 했으면 한다.
엔지니어는 여전히 있을 것이다.
어려운 버그도 여전히 있을 것이다.
지저분한 연동, 보안 실패, 운영 사고, 이상한 성능 문제, 아키텍처 트레이드오프, 권한 버그, 그리고 어떤 모델도 한 번의 프롬프트로 깔끔하게 이해하지 못하는 비즈니스 규칙도 여전히 있을 것이다.
하지만 그 어떤 것도 예전의 초보자 차선을 보호해 주지 않는다.
한때 훈련장이었던 곳이 지금은 관리자 자리에서 보면 AI가 가장 먼저 돈을 아껴야 할 정확한 지점처럼 보인다.
그래서 이건 “프로그래머가 사라질까?”라는 질문보다 훨씬 더 가혹하다.
아니다. 그런 식으로는 아니다.
더 가혹한 질문은 이거다. 회사는 AI가 이미 충분히 잘 해내는 일을 통해 인간이 배우도록 여전히 돈을 낼까?
그 대답은 훨씬 더 나빠 보인다.
“그냥 AI를 배워라”는 완전한 답이 아니다
이 영역의 많은 조언은 지나치게 가볍다고도 생각한다.
물론 새 개발자는 도구를 배워야 한다.
물론 AI 사용을 거부하는 건 어리석다.
하지만 “AI를 써라”는 말만으로는 커리어 계획이 되지 않는다.
당신이 하는 일이 시장이 이미 가치 절하하려는 바로 그 층에서 AI로 더 빨라지는 것뿐이라면, 문제에서 빠져나오는 게 아니다. 그 안에 앉아 있는 것이다.
더 안전한 가치는 위로 이동하고 있다.
- 요구사항을 더 명확하게 쪼개는 능력
- 시스템 사고
- 아키텍처 판단력
- 생성된 헛소리를 디버깅하는 능력
- 코드가 그저 맞아 보이는 것뿐인지 아는 감각
- 제품 로직과 비즈니스 로직이 실제로 어떻게 맞물리는지 이해하는 능력
그건 단순히 “코드를 쓸 수 있다”와는 다른 기준이다.
장기적 위험은 파이프라인 붕괴다
나는 기업들이 이 부분으로 몽유병처럼 걸어 들어가고 있다고 생각한다.
시니어 엔지니어는 허공에서 갑자기 생겨나지 않는다. 대개 더 작고, 더 지저분하고, 더 반복적인 일을 수년간 하면서 머릿속 패턴 라이브러리가 충분히 쌓인 뒤에야 더 어려운 일을 다룰 수 있게 된다.
기업이 단기 절감 효과가 너무 좋아 보인다는 이유로 그 층을 너무 공격적으로 비워 버리면, 나중에 가서 미래의 시니어를 만들어내던 경로를 태워버리는 방식으로 돈을 아낀 셈이라는 걸 깨달을 수도 있다.
그런 종류의 실수는 내게 아주 그럴듯하다.
패턴에도 딱 맞는다.
- 지금 효율을 축하한다
- 훈련 문제를 무시한다
- 나중에 AI 도구는 써봤지만 깊은 판단력은 한 번도 직접 만들어 보지 못한 사람들로 시장이 가득 차자 당황한다
내가 지금 신입 개발자에게 해줄 말
내가 지금 시작하는 입장이라면, 목표를 “코드를 쓰는 사람이 되기”로 두지 않을 것이다.
그건 너무 작다.
나는 이런 사람이 되는 걸 목표로 둘 것이다.
- 시스템 전체를 이해하는 사람
- 생성된 코드가 약한 지점을 알아채는 사람
- 계층을 가로질러 버그를 추적하는 사람
- 권한과 실패 상태를 생각할 수 있는 사람
- 모호한 요청을 작동 가능한 아키텍처로 바꾸는 사람
- AI를 쓰되 맹목적으로 믿지는 않는 사람
왜냐하면 시장은 예전보다 순수한 코드 산출물에는 더 적게 돈을 낼 것이고, 그 산출물이 안전한지, 완전한지, 배포할 가치가 있는지를 아는 사람에게는 더 많이 돈을 낼 것이기 때문이다.
마지막 생각
그러니 아니다. 나는 AI가 단순히 “프로그래머를 죽인다”고 생각하지 않는다.
그보다 먼저 더 지독한 일을 한다고 본다.
사람들에게 애초에 프로그래머가 되는 법을 가르쳐 주던, 싸고 반복적이고 초보자 친화적인 일을 속부터 비워버린다.
그래서 여기서의 진짜 싸움은 AI 대 소프트웨어 엔지니어링이 아니다.
AI 대 주니어 사다리다.
그리고 그 사다리가 무너지면, 피해는 올해 채용 숫자에서만 드러나지 않는다. 몇 년 뒤 모두가 갑자기 진짜 판단력을 가진 사람을 찾기가 얼마나 어려워졌는지 깨닫는 순간 드러나게 될 것이다.