AI가 주니어 개발자를 쓸모없게 만들고 있다
(beabetterdev.com)- AI 도구가 주니어 개발자에게 얕은 역량만 만들어주고 있으며, 코드를 빠르게 출력하지만 왜 그런 접근을 택했는지 설명하지 못하는 상황이 빈번해짐
- 시니어 개발자의 진정한 가치는 코드 작성 속도가 아니라, 수년간 실패를 통해 축적한 실패 패턴 인식에 있음
- AI를 사용하더라도 에러를 직접 분석하고, 코드를 추적하고, 가설을 세우는 의도적 고군분투 과정이 필수적임
- 커밋하는 모든 코드에 대해 라이브러리 선택 이유, 패턴, 트레이드오프를 직접 설명할 수 있어야 하며, 그렇지 않으면 출시 준비가 안 된 것임
- AI를 단순 답 생성기가 아닌 튜터로 활용해, 여러 접근법의 장단점을 학습하는 방식으로 전환해야 함
문제의 본질: AI가 만드는 얕은 역량
- LLM 활용으로 빠른 기능 구현과 배포가 가능해졌지만, 코드 선택 이유를 설명하지 못하는 상황 발생
- 코드 리뷰에서 접근 방식을 묻는 질문에 답하지 못하는 얕은 역량(shallow competence) 현상이 확산
- AI가 제시한 코드를 그대로 수용하는 패턴이 반복됨
- 겉으로는 생산성이 높아 보이지만, 설계 의도와 트레이드오프에 대한 이해가 부족한 상태
- 이러한 문제는 시간이 지나며 신뢰 하락으로 이어질 가능성이 있음
시니어 개발자가 가치 있는 이유
- 경험 많은 개발자가 비싼 이유는 코드를 빠르게 쓰기 때문이 아니라, 무엇을 하지 말아야 하는지 오랜 시간에 걸쳐 체득했기 때문
- 잘못된 아키텍처 결정을 내리고 그 결과와 함께 살아본 경험, 새벽 2시에 장애 호출을 받아본 경험 등에서 비롯된 실패 패턴 인식이 기업이 실제로 지불하는 비용
- 현재 많은 주니어 개발자가 AI 활용 과정에서 이 과정을 건너뛰는 현상이 발생
5가지 전략
-
1. 기초를 제대로 학습할 것
- 좋은 코드가 무엇인지 알아야 AI가 내놓는 결과물을 평가할 수 있으며, 그렇지 않으면 AI 출력을 맹목적으로 수용하게 됨
- 추천 도서: Head First Design Patterns(코딩 패턴과 선택 이유 이해)와 Designing Data-Intensive Applications(데이터 집약 시스템 설계 원리)
-
2. 장애 사례를 공부할 것
- Cloudflare, AWS, Azure, Google 등 대형 서비스 장애 시 발행되는 상세 포스트모템(post-mortem) 문서를 읽을 것을 권장
- 원인, 근본 원인 분석, 수정 방법, 재발 방지 대책 등이 포함되어 있음
- Amazon에서는 COE(Correction of Errors), Facebook 등 대부분의 대형 기술 기업에도 내부 유사 문서가 존재
- 복잡한 시스템이 어떻게 무너졌는지 이해하는 것이 문서를 읽는 것보다 훨씬 강하게 기억에 남음
- Cloudflare, AWS, Azure, Google 등 대형 서비스 장애 시 발행되는 상세 포스트모템(post-mortem) 문서를 읽을 것을 권장
-
3. 고군분투를 의도적으로 만들 것
- AI 이전에는 문제를 직접 해결하는 과정이 선택이 아니라 기본이었으나, 이제 24시간 사용 가능한 탈출구가 존재
- 에러를 AI에 붙여넣기 전에 먼저 스택 트레이스를 읽고, 코드를 추적하고, 로그를 확인하고, 무엇이 잘못되었는지 가설을 세워볼 것
- 이 과정이 진짜 디버깅 감각을 구축하는 방법
- AI는 이후에 활용해도 됨
- 온콜에 참여하고, 아무도 안 잡는 티켓을 맡는 것이 시스템 작동 원리를 배우는 가장 효과적인 방법
-
4. 이해하지 못한 코드를 절대 출시하지 말 것
- 코드 리뷰에서 특정 접근법을 택한 이유를 물었을 때 "AI가 제안했다"고 답하면, 즉시 신뢰를 잃음
- AI를 사용한 것이 문제가 아니라, 자신이 제출하는 코드를 이해하려는 노력을 하지 않은 것이 문제
- 커밋하는 모든 라인에 대해 왜 이 라이브러리인지, 왜 이 패턴인지, 트레이드오프가 무엇인지 설명할 수 있어야 함
- 속도를 줄이더라도 이해가 선행되어야 하며, 단순 복사-붙여넣기하는 사람이라는 평판은 회복하기 매우 어려움
- 코드 리뷰에서 특정 접근법을 택한 이유를 물었을 때 "AI가 제안했다"고 답하면, 즉시 신뢰를 잃음
-
5. 답이 아니라 "왜"를 프롬프트할 것
- AI에게 문제 해결만 요청하는 대신, 여러 접근법과 각각의 장단점 설명을 요청할 것
- 이렇게 하면 두 가지 효과 발생:
- 트레이드오프에 대해 실제로 학습하게 됨
- AI가 추론 과정을 거치면서 추천 자체가 바뀌는 경우도 있어, 더 나은 답을 얻을 수 있음
속도 압박에 대한 현실적 조언 : 생산성과 학습의 균형
- 속도를 늦추면 뒤처질 것이라는 우려는 현실적이나, 업무를 완전히 멈출 필요는 없음
- 여유 시간, 사이드 프로젝트, 경쟁이 적은 티켓 등에서 의도적이고 불편한 학습을 수행할 것
- 실제 기술을 쌓는 시간과 단순 출력하는 시간을 의식적으로 구분해야 함
AI를 튜터로 활용할 것
- 이전 세대 개발자에게는 없었던, 무엇이든 원하는 깊이로 설명해주는 AI 튜터를 지금 가지고 있음
- AI에게 일을 시키기만 하지 말고, 설명을 요청하고 가르치게 하는 방식으로 활용해야 함
- 개발자의 가치는 코드를 출력하는 능력이 아니라, 어떤 코드든 보고 좋은 코드인지 판단할 수 있는 능력에 있음
- AI가 생성한 코드 여부와 무관하게, 좋고 나쁨을 구분하는 능력이 핵심 역량
- 의도적 학습과 실패 경험 축적만이 장기적 경쟁력을 형성할 수 있음
AI 가 출력하는 텍스트라도 읽었으면 이 꼴은 안남.
그냥 주니어가 아니라 복붙 딸깍만 하는 주니어가 문제.
사실 AI 이전에도 있었죠.
스택오버플로우에서 AI 가 됐을 뿐이지.
AI 가 실제로 개발자를 언제 대체할지도, 실제로 가능할지도 아직은 모르는데, 덮어놓고 찬양할 필요는 없는 것 같습니다. 실제로 reddit 에서도 뭘 만들어서 유저가 들어오는데, 자기 서비스의 뭐가 위험한지도 모르고 도움을 요청하는 글이 꽤 있습니다.
옛날 수공예로 물건 만들때는 도제식으로 육성하다가 산업혁명 후 단순노동으로 바뀌었듯이
이제 사람들은 컨베이어 벨트에 지나가는 부품처럼 4라인에서 쏟아져 나오는 코드만 뚫어져라 보는거죠.
부품 검수만 하는 사람한테 '이거 왜 이렇게 디자인했어?' 하면 뭐 10년을 일해도 '기계가 그러던데요' 말곤 할 대답이 없죠
결국 사용하는 사람이 어떻게 생각하고 활용하느냐가 중요할 것 같습니다.
아무 생각 없이 맡기기만 하는 환경이 생겨서 무심코 끌려다닐 위험성도 높아지긴 했지만 잘 활용하면 기존보다 훨씬 빠르고 정확한 학습, 개발이 가능하더군요.
다만 처음 학습하는 사람들에게 알려드리기 좋은 기존의 학습, 경험 방식과 다른 무언가 새로운 학습 모범 체계와 방식이 빨리 정리되면 좋겠네요.
시니어가 그동안 경험했던 것을 주니어가 더 빠른 속도로 학습할것 같은데요?
어짜피 저자가 말하는 단순 복붙하는 주니어 개발자는 스택오버플로우 시대 때에도 쓸모가 없었습니다.
그저 AI 시대 때 스택오버플로우 코드 복붙하던 습관이
AI의 답변으로 옮겨간거죠
어짜피 과거 공부하던 주니어 개발자라면
AI시대 때에는 더빠른 속도로 시니어급 개발자로 성장할겁니다.
이제 로우레벨도 볼 필요 없고 AI로 학습도 빠르게 '한다고 치면' 4년제 나온 한국인 주니어 개발자를 비싸게 누가 뽑겠습니까?
만능 무안단물인 AI 에이전트로 고용하고 AI로 온보딩하고 AI로 번역하면서 저기 인도 라울 씽(24, IIT 석사)씨나 장웨이(26, 칭화대 수석)씨를 더 싸게 고용하겠죠
특히나 남성분들은 사회 진출에 군대로 +2살 되는거 감안할 때 지금 주니어분들 너무 걱정입니다.
AI를 주로 쓰게되면 실패를 해볼 기회가 없기에 엔지니어링 교훈을 얻지 못할겁니다. 책이나 글로 표현되지 않은 것은 AI로도 카바가 안되지요.
같이요. 같이 검색하고 같이 해결해나가는거죠. 그렇게 해보시지 않으셨을텐데 너무 강하게 정답으로 내시려는거 아닌가 싶네요. 저도 최대한 친절하고 점잖게 댓글 남겨보겠습니다~^^
Hacker News 의견들
-
나는 앞으로 AI 없이 배우는 기간이 필수적이라고 생각함
모든 기술 습득에는 ‘직접 손으로 해보는 반복 연습’이 핵심임
학습 단계는 “AI 없이 직관 형성 → AI를 점진적으로 활용해 한계를 이해 → AI 네이티브 전문가”로 발전할 것이라 봄
하지만 대규모로 이걸 구현하는 방법은 아직 미정임
아이러니하게도 AI는 개인 맞춤형 튜터로 유용하지만 동시에 실습을 회피하게 만드는 유혹이 됨
현재의 시험 중심 교육 시스템은 오히려 AI 의존을 강화함
그래서 나는 견습 제도가 다시 부활할 것이라 예측했고, Microsoft의 preceptorship 제안을 그 신호로 봄
대기업이 문제를 인식하고 해결책을 제시했다는 점이 고무적임- 나도 비슷한 경험이 있음. Mathematica나 WolframAlpha 같은 도구가 있었지만, 미적분을 배우려면 수백 번의 손 계산을 직접 해야 했음
이런 도구들은 내가 어디서 틀렸는지 이해하는 데 도움을 줬지만, 결국 손으로 하는 연습이 핵심이었음 - 수세기 동안의 연구는 ‘직접 실습’과 ‘이론 학습’을 대비시켜 왔음
하지만 지금의 AI 사용은 단순히 이론을 배우는 게 아니라, 마치 노예에게 일을 시키는 것과 같음
역사적으로 그런 방식은 숙련을 낳지 못했음 - 학생들이 AI를 남용하지 않게 하려면 간단함 — 종이와 연필 시험, 전자기기 금지
- 자기 절제만으로 AI를 피하는 건 현실적으로 매우 어려움
이미 수많은 사람들이 소셜 미디어 중독을 통제하지 못하고 있음 - 나도 동의하지만, 요즘 소프트웨어의 단순함과 미학이 사라지고 있음
Rich Hickey의 Simple Made Easy 강연이 내 커리어에 큰 영향을 줬음
AI는 ‘맛’이 없고, 코드 양을 늘리는 방향으로 작동함
진짜 엔지니어링은 적은 코드로 가장 영향력 있는 기능을 만드는 예술임
- 나도 비슷한 경험이 있음. Mathematica나 WolframAlpha 같은 도구가 있었지만, 미적분을 배우려면 수백 번의 손 계산을 직접 해야 했음
-
예전에도 주니어 개발자는 생산성보다 학습을 위해 존재했음
시니어가 몇 시간 만에 끝낼 일을 일부러 일주일짜리 과제로 줬던 이유가 그거였음
지금은 기업들이 그 ‘훈련 비용’을 회피하려 함- 아이를 키우는 사회적 비용과 비슷한 구조임
모두가 단기적 이익만 보고 장기적 붕괴를 초래함
주니어가 없으면 시니어도 사라지고, 결국 산업 자체가 무너질 것임 - 우리 회사는 지역 대학과의 협약 때문에 매년 인턴과 주니어를 뽑아야 함
비용 절감과 승진 구조의 균형을 위해서도 주니어는 필요함
하지만 AI가 등장하면서 이제는 중간급 개발자까지 대체될 가능성이 있음 - 현실적으로 주니어는 투자 대비 효율이 낮고, 이직률도 높음
단기 목표를 맞추는 입장에서는 “주니어는 마이너스 생산성”임 - 좋은 주니어는 다름. 에너지와 열정이 넘치고, 빠르게 성장함
- 어떤 신입들은 시니어보다 빠르게 배우고 뛰어남
느린 이유는 실력이 아니라 비효율적인 조직 프로세스 때문임
- 아이를 키우는 사회적 비용과 비슷한 구조임
-
나는 학생들에게 항상 말함 — “주니어는 직접 코드를 써야 함”
htmx의 글처럼, 시니어는 주니어가 코드를 쓸 수 있게 해야 함
시니어는 주니어로부터 나오기 때문임- 하지만 요즘은 짧은 근속 기간 때문에 회사가 사람을 키우지 않음
“시니어가 필요하면 시니어를 채용하라”는 식으로 바뀌었음
이게 COBOL 세대의 반복이 될 수도 있음 - “LLM이 주니어만큼 똑똑하다”는 말이 문제의 출발점임
시니어와 주니어의 격차가 커졌고, 손으로 부딪히며 배운 경험이 사라지고 있음 - 비용에 민감한 기업이 주니어를 키우는 건 어렵지만, 결국 경험 많은 개발자 부족으로 스스로 발목을 잡게 됨
나 같은 30년차 개발자는 지금 높은 계약 단가를 받음 - “주니어에게 돈을 주고 코드를 쓰게 해야 하나?”라는 질문이 생김
코딩이 예술이라면, 결국 예술가처럼 생존 경쟁을 해야 할지도 모름 - 기업들도 이 딜레마를 알고 있음
모두가 주니어 양성을 포기하면 결국 시니어 공급 붕괴로 이어짐
하지만 단기 이익 때문에 규칙을 깨려는 유인이 큼
- 하지만 요즘은 짧은 근속 기간 때문에 회사가 사람을 키우지 않음
-
사실 많은 시니어 개발자도 별로 뛰어나지 않음
프로젝트 품질은 일정 시점 이후 항상 하락함- 내가 속했던 두 팀 모두 ‘시니어’로만 구성됐지만, 진짜 10배 생산성을 내는 사람은 극소수였음
대부분은 그저 타이틀만 시니어였고, 나도 이름만 시니어일 뿐 중간 수준이었음 - 문제는 개인의 과대평가보다 조직 전체의 연극화된 구조임
매니저, 리크루터, 개발자 모두 ‘일하는 척’만 하고, 실제 가치는 소수의 진짜 실력자에게서 나옴
- 내가 속했던 두 팀 모두 ‘시니어’로만 구성됐지만, 진짜 10배 생산성을 내는 사람은 극소수였음
-
내가 두려워하는 시나리오는, 우리가 프롬프트 관리자로 전락하는 것임
코드베이스를 제대로 이해하지 못한 채 AI가 고친 코드만 믿게 되는 미래임- 나도 요즘은 직접 코드를 거의 안 쓰지만, AI 네이티브 워크플로우에서 새로운 재미를 찾고 있음
여전히 깊이 있는 문제 해결의 쾌감이 존재함
다만 React나 NextJS 같은 스택을 직접 안 써도 돼서 행복함
AI 이전에 탄탄한 기본기를 익힌 사람들은 지금 정말 운이 좋음 - 이미 현실화됨. 프레임워크 남용과 추상화 과잉이 낳은 비효율이 LLM 코딩으로 이어짐
‘left-pad 문화’의 다음 단계일 뿐임 - 이해 가능한 코드베이스는 여전히 중요함
그래야 AI도 더 잘 작동하고, 인간의 도메인 지식이 빛을 발함 - 실제로 이 글도 같은 문제를 다룸
나도 같은 불안을 느낌 - 내가 새로 들어간 회사는 코드의 80~90%가 AI 생성임
리뷰도 거의 없고, 장기적 아키텍처 고려가 사라짐
품질 저하를 사회 전체가 받아들이는 중인 듯함
- 나도 요즘은 직접 코드를 거의 안 쓰지만, AI 네이티브 워크플로우에서 새로운 재미를 찾고 있음
-
요즘은 시니어보다 주니어가 더 유용하다고 느낌
시니어에게 질문하면 “AI가 이렇게 답했다”고만 함
반면 주니어는 배우려는 열정이 있고, 스태프급은 여전히 훌륭한 멘토임- 나도 봤음. 특히 관리 트랙 시니어들이 이런 경향이 강함
반면 일부 중간급은 AI 없이는 아무것도 못 함
문제를 이해하지 못하고, AI가 대신 해결해주자 오히려 자기 무능에 무감각해짐 - 결국 “쓰지 않으면 잃는다”는 말이 현실이 됨
LLM 남용은 인지적 퇴화를 초래할 것임
나는 LLM에 오염되지 않은 사람만 채용하려고 함
- 나도 봤음. 특히 관리 트랙 시니어들이 이런 경향이 강함
-
이 글 자체가 LLM이 쓴 것처럼 느껴짐
“It’s not X, but Y” 같은 문체가 너무 전형적임- 맞음. 홈페이지 썸네일도 전부 AI 생성이고, 클릭 유도형 제목뿐임
- 누군가 말했듯, “이 패턴을 한 번 인식하면 세상 모든 글이 그렇게 보인다”는 말이 떠오름
이제 웹 콘텐츠 대부분이 AI 생성물일 거라 생각하니 우울함
결국 우리는 진짜와 가짜의 구분이 사라진 세계로 가고 있음
그래서 나는 차라리 용접을 배우러 갈까 생각 중임 - 요즘 “AI가 코딩을 쉽게 만들었지만 엔지니어링은 어렵게 했다”류의 글이 넘침
이 글도 같은 스타일임
-
문제의 근원은 시니어에게 있음
주니어에게 쓸모없는 일거리만 주고, 새로운 도구를 활용할 기회를 주지 않음
이제는 “이메일 템플릿 수정”이 아니라 “내부 프로세스 자동화 서비스 만들기” 같은 과제를 줘야 함- 하지만 요즘은 너무 빠르게 결과가 나오다 보니 직관을 쌓을 기회가 줄었음
주니어가 무엇을 모르는지도 모르는 상태에서 배우기 어렵고, 시니어도 가르치기 힘듦
- 하지만 요즘은 너무 빠르게 결과가 나오다 보니 직관을 쌓을 기회가 줄었음
-
나는 AI 덕분에 HTML도 모르는 주니어를 채용할 수 있었음
예전엔 불가능했지만, 이제는 약간의 끈기만 있으면 진입이 가능함
결국 쉬운 길을 택하면 그만큼의 결과를 얻게 됨- 나도 독학으로 수백 통의 이력서를 보냈지만 인터뷰조차 못 받음
어떻게 그런 주니어가 채용됐는지 궁금함 - 어려운 길이야말로 인생을 흥미롭게 만드는 요소임
쉬운 길만 택하면 삶의 깊이가 사라짐 - HTML도 안 배웠다니, 그게 꼭 필수 과정인가 싶음
나도 그런 강좌는 들어본 적 없음 - AI가 대신 일할 수 있는데, 왜 그 주니어에게 급여를 주는지 의문임
- 나도 독학으로 수백 통의 이력서를 보냈지만 인터뷰조차 못 받음
-
결국 AI는 창의성의 원천을 고갈시킬 위험이 있음
인간이 새로운 아이디어를 내지 않으면 AI는 자기 복제만 하게 됨
이런 순환은 기술적 정체와 종속을 낳을 것임- 하지만 미래의 학습 방식은 달라질 수 있음
비지도 학습이 이런 한계를 극복할 가능성이 있음 - 어쩌면 새로운 아이디어보다, 기존 블록을 조합해 새로운 형태의 창조를 하는 시대가 될 수도 있음
- 오히려 평균 개발자의 역량이 낮아질수록 코딩 LLM의 가치는 더 커짐
좋은 개발자가 사라지면, 나쁜 AI조차 유용해짐 - 이런 문제를 깨닫는 시점은 이미 늦은 뒤일 것임
- 나도 이런 생각을 공유하는 커뮤니티가 있다면 함께하고 싶음
- 하지만 미래의 학습 방식은 달라질 수 있음