[번역] The Post-Developer Era (by josh.w.comeau)
TMT프론트엔드 개발의 종말로부터 2년
2년 전, 2023년 3월에 저는 “프론트엔드 개발의 종말”이라는 블로그 글을 올렸습니다. 그 무렵은 OpenAI가 GPT-4 쇼케이스를 공개한 직후였고, 대중의 반응은 인간 소프트웨어 개발자가 곧 쓸모없어질 것이며, 소프트웨어는 곧 전적으로 기계에 의해 작성될 것이라는 것이었습니다.
저는 이런 주장에 회의적이었습니다. 그래서 그 블로그 글에서, 저는 소프트웨어 개발이 가까운 미래에도 여전히 인간을 필요로 할 것이라는 제 생각을 밝히며 그 이유를 제시했습니다. 제 가설은 LLM이 인간 개발자를 대체하는 것이 아니라, 보조하는 역할을 하게 될 것이라는 것이었습니다.
그 당시, 트위터에서는 AI가 인간 프론트엔드 개발자에 대한 수요를 전멸시키는 데 몇 개월밖에 걸리지 않을 것이라는 게 통념이었습니다. 많아야 1~2년 정도라고 했죠. 자, 그로부터 2년이 넘게 지났습니다! 과연 그들의 말이 맞았을까요? 우리는 지금 “포스트 개발자 시대”에 살고 있는 걸까요?
이 블로그 글에서는 지금의 상황을 다시 한번 살펴보고, 그동안 어떤 변화가 있었는지, 앞으로 어떻게 흘러갈지 예상해보려 합니다. 만약 여러분이 미래의 커리어에 대해 불안감을 느끼고 있는 예비 개발자라면, 이 글이 어느 정도 명확한 시야를 제공해줄 수 있기를 바랍니다. ❤️
기업과 AI의 활용
지난 몇 년간, 기업들은 AI 도구를 점점 더 많이 채택해왔습니다. 예를 들어, Forbes는 최근 “구글에서 작성되는 코드의 25% 이상을 AI가 작성한다”는 제목의 기사를 냈습니다.
이 기사 제목만 보면, 마치 AI가 25%의 일을 하고 인간 개발자는 75%를 담당하는 것처럼 들립니다. 하지만 실제로는 그렇지 않습니다. 이 제목은 제가 보기엔 오해의 소지가 있습니다.
AI가 구글에서 커밋되는 코드의 25%를 생성하고는 있지만, 이건 AI가 독자적으로 활동하고 있다는 뜻이 아닙니다. 능숙한 인간 개발자가 중심에 있으며, AI의 출력을 자신의 지식과 경험을 바탕으로 조정하고 다듬고 있으며, 자신이 작성한 코드와 섞고 있습니다. 제가 아는 한, 구글에서 작성되는 코드의 100%는 여전히 개발자들에 의해 만들어지고 있습니다. AI는 그들이 일을 잘 해내기 위한 여러 도구 중 하나일 뿐입니다.
즉, 구글의 프로덕트 팀이 개발자 25%를 해고하고 그 자리를 자율적인 AI 로봇으로 채웠다는 식은 아니라는 겁니다. 그런 일이 대형 테크 기업에서 실제로 벌어졌다는 얘기는 들어본 적이 없습니다.
물론 인간 개발자를 완전히 대체할 수 있다고 주장하는 스타트업들도 있습니다. 그중 가장 유명한 것이 Cognition에서 만든 Devin이라는 제품으로, 2024년 3월에 출시되었습니다. 하지만 실제로 이걸 사용해보는 기업들은 곧 문제를 겪습니다. 예를 들어, 어떤 팀은 Devin에게 맡긴 20개의 작업 중 3개만 완료할 수 있었고, 결과적으로 너무 번거로워서 한 달 만에 포기했습니다.
그 팀의 소감은 다음과 같습니다:
Devin이 할 수 있는 작업은 너무 작고 정의가 잘 되어 있어서 내가 직접 하는 게 더 빠르고 내 방식대로 할 수 있는 것들이다. 시간 절약이 가능할지도 모르는 큰 작업들은 대부분 실패할 것 같다. 결국 사용할 이유가 없다.
— Johno Whitaker
처음엔 몇 가지를 조정하면 될 것 같아서 꽤 흥분했었다. 하지만 점점 더 많은 것을 수정하게 되면서, 차라리 처음부터 직접 단계별로 했으면 훨씬 나았겠다는 생각이 들었다.
— Isaac Flath
이 인용문들은 AI 회의론자들이 쓴 것이 아닙니다. 이들은 AI 스타트업에서 일하고 있으며, 제품을 진지하게 그리고 기대를 갖고 사용해본 기술자들입니다. 그리고 이들의 경험은 흔치 않은 사례가 아닙니다. 제가 접한 다른 실사례 보고서들 역시 같은 결론에 도달했습니다. 그냥 잘 안 된다는 거죠.
제가 보기엔, AI가 성공적으로 사용된 모든 사례에는 여전히 능력 있는 인간 개발자가 필수적으로 개입되어 있습니다. 따라서 우리는 아직 “포스트 개발자 시대”에 살고 있지 않다고 생각해도 될 것 같습니다.
차선을 벗어나다
지난 몇 년간, 저도 AI 도구를 많이 실험해봤습니다. 몇 달 전에는 Cursor)라는 AI 기반 IDE로 전환했고, Claude Sonnet과 함께 “에이전트” 모드를 사용해봤습니다. 인정하건대 꽤 인상적입니다. 특정한 종류의 작업에서는, 제가 약간의 컨텍스트를 제공하고 방향을 제시하면, 첫 시도에 완성도 높은 솔루션을 만들어냅니다.
TypeScript 오류나 린트 오류도 잡아주고, 때로는 제가 모르던 멋진 API 덕분에 제 코드보다 나은 해결책을 제시하면서 저를 가르쳐준 적도 있습니다.
하지만 완벽하진 않습니다. 여전히 지도가 필요합니다.
이건 마치 “크루즈 컨트롤” 모드로 고속도로를 달리는 느낌입니다. 차는 대부분 내가 향하게 하는 방향으로 가지만, 여전히 핸들을 잡고 차선을 유지시켜줘야 합니다. 그렇지 않으면 점점 차선을 이탈해서 결국 도로 밖으로 나가게 됩니다.
이게 바로 “개발자가 더 이상 필요 없다”는 이론에 큰 타격을 줍니다. 만약 제가 코딩을 전혀 모른다면, 모델이 만들어낸 출력물의 미묘하지만 치명적인 오류를 알아채지 못했을 겁니다. 수정이 필요한지도 모르고, 수정하는 법도 모를 테니까요!
LLM을 이용해 프로젝트를 만든 노코더(no-coder)들의 얘기를 들어보면, 이들도 비슷한 경험을 했다고 합니다. 처음엔 순조롭게 시작되지만, 결국 한계에 다다릅니다. 아무리 AI를 독려해도 더 이상 진전이 없고, 코드는 앞뒤가 안 맞는 혼란스러운 덩어리가 됩니다. 그리고 어느 순간, 아무리 덕트 테이프로 붙여도 더는 유지되지 못하고 무너져버립니다.
또한 LLM이 잘하지 못하는 작업도 많습니다. 때로는 Claude에게 원하는 걸 설명하느라 10분을 허비한 뒤, 그냥 제가 직접 5분 만에 만드는 게 낫겠다고 느끼곤 했습니다. 이제 저는 어떤 작업을 AI에게 맡기고, 어떤 건 제가 직접 해야 하는지를 직감적으로 구분할 수 있게 되었습니다.
전반적으로, LLM은 저에게 많은 시간을 절약해줍니다. 어떤 경우엔 30분짜리 작업을 30초 만에 끝내주기도 하니까요. 그런 순간은 정말 짜릿합니다. 하지만 솔직히 말해, 저는 여전히 대부분의 시간을 직접 코딩하면서 보내고 있습니다.
이건 마치 태그 팀 레슬링 같아요. Claude가 잘할 것 같은 작업이 나오면, 저는 탭 아웃하고 그에게 맡깁니다. 하지만 대부분의 시간에는 제가 더 빠르거나 간단하기 때문에 직접 해결합니다.
현재의 취업 시장
제가 2년 전 이 글을 처음 썼을 때도, 취업 시장은 꽤 어려운 시기였습니다. 안타깝게도, 지금도 여전히 어렵습니다.
구직자라면 아시겠지만, 예전만큼 양질의 구인 공고가 많지 않고, 좋은 공고에는 지원이 몰립니다. 인터뷰 기회를 얻기도 어렵고, 오퍼를 받기는 더 어렵습니다.
하지만 이게 실제로 기업들이 자율적인 AI 에이전트로 개발자들을 대체하고 있어서 그런 건 아니라고 생각합니다. 제가 앞서 공유한 실제 사례들을 보면, 그런 가설은 지지받지 못하고 있죠. 그렇다면 왜 이렇게 취업 시장이 여전히 힘든 걸까요?
제가 생각하기엔 몇 가지 요인이 있습니다:
-
거시경제적 상황. 금리가 여전히 비교적 높은 상태이고, 이는 스타트업들이 자금을 유치하고 성장하면서 개발자를 고용하는 것을 어렵게 만듭니다. 수년간, 우리는 경기 침체 직전이라는 전반적인 경제 분위기 속에 있었죠.
-
대규모 해고. 최근 몇 년 동안 대형 테크 기업들이 수십만 명의 인력을 해고했습니다. 다양한 이유가 있었지만, 그 결과로 시장에는 실력 있는 개발자들이 넘쳐나고 있죠.
-
AI 신화. 일부 기업들은 여전히 AI가 곧 개발자를 쓸모없게 만들 것이라고 믿고 있으며, 이 때문에 필요 이상으로 보수적으로 채용에 나서고 있습니다.
마지막 요인은 특히 답답합니다. 기업들이 정말로 필요한 개발자를 채용하지 않고 있는 이유는, AGI가 곧 등장해서 인간 개발자가 더는 필요 없게 될 거라는 믿음 때문입니다. “이제 곧 나온다”고 몇 년째 말하고 있으면서요. 😅
앞으로의 전망
2023년에 “프론트엔드 개발의 종말”을 쓸 당시, 저는 이제 막 개발을 배우고 있는 예비 개발자들, 커리어의 시작점에 있는 분들을 위한 메시지를 전하고자 했습니다. 그때 세상은 너무도 암울한 예측들로 가득했고, 저는 온라인에서 떠도는 FUD(공포, 불확실성, 의심)에 맞서는 균형추를 제공하고 싶었어요.
그리고 지난 2년 동안 많은 것들이 변했지만, 변하지 않은 두 가지가 있습니다:
- 기업들은 여전히 제품을 만들기 위해 인간 개발자를 필요로 합니다.
- AI 전도사들은 여전히 곧 기업들이 인간 개발자 없이 제품을 만들게 될 거라고 주장합니다.
만약 여러분이 대학에서, 부트캠프에서, 혹은 독학으로 코딩을 공부하고 있는 예비 개발자라면, 저는 여러분이 일을 시작할 시점에 기회가 여전히 존재할 것이라고 믿습니다. 소프트웨어 개발이 완전히 자동화되기까지는 아직도 한참 남았다는 것이 명확해 보입니다. 그리고 기업들이 AI를 ‘개발자 대체재’가 아니라 ‘개발자 강화도구’로 보는 시점이 오면, 성장을 스스로 방해하는 대신 훨씬 더 적극적으로 채용에 나설 거라고 생각합니다.
AI 모델은 앞으로도 계속해서 발전할 것입니다. 거의 매주, 어떤 모델이든 하나쯤은 새로운 벤치마크에서 기록을 경신했다는 소식이 들려오죠. 가장 최근에는 구글이 Gemini 2.0 Flash와 2.5 Pro 모델을 발표했습니다.
(이미지 설명: 다양한 AI 모델의 속도를 보여주는 차트. Gemini 2.0 Flash가 가장 빠르고, GPT 4.5 Preview가 가장 느림)
이제 우리는 기술 곡선에서 ‘진보가 점점 미세해지는 지점’에 도달한 것처럼 보입니다. 최근에 정말 혁신적인, 판을 바꾸는 무언가가 등장한 것은 한동안 없었습니다. 각 모델이 조금씩 더 좋아지고는 있지만, 이미 잘하는 영역을 개선하는 데 집중하고 있고, 전혀 새로운 문제를 정복하고 있지는 않습니다.
그리고 지금 취업 시장이 암울하게 느껴지긴 해도, 적어도 미국에서는 상황이 좋아지는 추세입니다:
(이미지 설명: 2020년에 기술직이 감소했고, 2022년에 급증한 뒤, 2023년에 급감. 이후 수치는 작년 최저점을 넘어섰으며 2024년 초부터 다시 증가 추세.)
만약 AI가 정말로 소프트웨어 개발자를 쓸모없게 만들고 있다면, 기술직 전체의 수는 점점 더 빠르게 줄어들고 있어야 할 겁니다. 하지만 실제로는 지난 1년간 그 수가 증가해 왔습니다. 이런 추세가 계속된다면, 머지않아 시장도 덜 잔인해질 겁니다!
걱정되는 점들
2023년에 저는 AI가 곧 우리의 소프트웨어 직업을 빼앗을 거라고는 생각하지 않았습니다. 2년이 지난 지금, 저는 그 믿음이 더욱 확고해졌습니다. 코딩을 할 줄 안다는 것은 여전히 굉장히 가치 있는 기술이며, 그 사실은 당분간 변하지 않을 거라고 생각합니다.
그렇다고 해서, “모든 게 잘 될 거야!”라는 말만 하려는 건 아닙니다. 😅
작년에, 미국인들은 이해할 수 없게도 무능한 사기꾼을 다시 대통령으로 뽑았습니다. 임기 시작 몇 달 만에, 트럼프는 세계 경제를 불태우고, 연방 정부를 무너뜨리며, 비시민권자에게 미국을 위험한 곳으로 만들어버렸고, 글로벌 무역 전쟁을 시작했습니다. 이 일이 기술 업계에 어떤 영향을 줄지는 예측하기 어렵지만, 분명 좋은 영향은 아닐 겁니다.
또한 저는 다음 세대의 개발자들에 대해서도 약간 걱정이 됩니다. LLM 에이전트를 사용하면 너무 쉽게 무의식적인 상태에 빠져들어, 생성된 코드를 제대로 보지도 않고 “변경사항 수락”만 연거푸 누르게 됩니다.* 저는 최근 제 새 강좌(opens in new tab)를 위한 랜딩 페이지를 만들면서 이런 함정에 빠졌던 적이 있습니다. 핸들을 너무 오래 놓은 탓에 이상한 코드를 리팩토링하는 데 꽤 많은 시간을 써야 했습니다.
가장 쉬운 길은 그냥 기계가 알아서 하게 두는 것이지만, 그렇게 하면 언젠가 AI가 멈췄을 때, 그 코드를 디버깅하고 고칠 수 있는 능력을 키울 수 없게 됩니다.
반대로, LLM을 적극적으로 활용한다면, 지금은 코딩을 배우기에 그 어느 때보다 좋은 시기이기도 합니다. TypeScript 오류 메시지를 이해하지 못할 때, AI는 그 오류를 이해하도록 도와주거나, 필요한 문서를 찾기 위한 핵심 키워드를 알려줄 수 있습니다. 우리 모두에게 개인 튜터가 생긴 셈이죠. 우리가 이해하지 못하는 것들을 이해하게 만들어 주는 튜터 말이에요.*
앞으로 몇 년간 어떤 일이 일어날지는 아무도 모르지만, 기업들이 결국 인간 개발자가 여전히 필요하다는 사실을 인정하고, 뛰어난 LLM과 함께하는 유능한 개발자 한 명이 엄청난 일을 해낼 수 있다는 걸 깨달을 때, **“개발자 르네상스”**가 찾아올지도 모른다고 저는 생각합니다. ✨
여러분이 소프트웨어 개발에 열정을 갖고 있다면, 혹은 이 직업이 상위 중산층으로 올라갈 수 있는 가장 좋은 기회라고 생각하고 있다면, 부디 AI에 대한 과장된 선전에 흔들리지 않길 바랍니다. 기업들은 여전히 사람을 고용하고 있고, 그게 곧 멈출 거라고는 생각하지 않습니다. 💖
취업을 위한 팁
현재 취업 시장에서 성공 가능성을 높이려면 어떻게 해야 할까요?
가장 먼저 인지해야 할 것은, AI 때문에 채용 과정이 기업 입장에서도 매우 고통스러워졌다는 점입니다. 채용 공고 하나에 수천 개의 AI가 작성한 형편없는 지원서가 몰릴 수 있습니다. 기업은 그 모든 쓰레기 속에서 괜찮은 후보를 가려내기 어렵습니다.
그래서 저는 두 가지 해결책을 제안합니다:
- 공고가 올라온 지 1~2일 내에 아주 일찍 지원하기.
- 네트워크를 활용하기.
만약 여러분이 이제 막 기술 업계에 발을 들인 상태라면, 네트워크가 없을 수 있습니다. 괜찮아요! 오늘부터 만들면 됩니다. 😄
방법은 정말 다양합니다. 가장 전통적인 방법은 지역 개발자 모임(meetup)에 나가는 것입니다. 이런 모임에서는 여러분이 일하고 싶은 기업에 다니는 개발자들을 만날 수 있고, 그들이 여러분의 이력서가 묻히지 않도록 도와줄 수 있습니다.
하지만 솔직히, 저처럼 내성적인 사람에게는 이 방법이 썩 잘 맞지는 않습니다. 제 커리어 초기에 지역 모임에 몇 번 가봤지만, 낯선 사람에게 말을 거는 것이 너무 어려워서 결국 아무도 못 만나고 그냥 돌아오곤 했거든요. 😅
다행히도, 다른 방법들이 많이 있습니다. 저는 재미있는 것들을 만들고 그것들을 온라인에 공유하면서 네트워크를 만들었습니다. 오픈소스 프로젝트에 기여하거나, 디스코드 커뮤니티에서 사람들과 교류하는 것도 좋은 방법입니다. 여러분이 잘할 수 있는 방식에 집중하면 더 좋은 결과를 얻을 수 있습니다. 이와 관련해 제가 쓴 “컴퓨터공학 학위 없이 개발자가 되기”라는 블로그 글도 참고해보세요.
또한, 여러분의 커뮤니티는 좋은 채용 기회를 발견하는 데도 도움이 될 수 있습니다. 요즘 온라인 채용 공고 중에는 실제로 존재하지 않는 가짜 회사가 데이터를 수집하기 위해 올린 경우도 많습니다. 대신 여러분의 LinkedIn 연락처들을 살펴보고 그들이 어디서 일하는지를 보고, 실존하는 회사 목록을 만들어 추적하는 방법도 있습니다.
지금 상황이 힘들긴 하지만, 이 팁들이 여러분의 시간과 노력을 조금이라도 아껴줄 수 있기를 바랍니다! ❤️