[ Essay - Technology ] 바이브 코딩의 허와 실
지금 우리는 가히 AI 시대라는 패러다임의 전환에 시대에 살고 있다고 해도 과언이 아니다.
특히, IT 업계에서 대다수의 작업량을 차지하는 프로그래밍의 영역에서
생성 AI를 이용한 생산성 향상의 가능성이 보이면서
어느 분야보다 가장 빠르게 괄목적인 성과를 이루고 있는듯 하다.
고작 몇 년전에는 커서에 의해 프로그래밍을 AI에게 프로그래밍을 위임하는 것이
더 나을 수 있다는 것이 어느정도 증명되면서,
작년에는 Claude Code의 영향으로 인해 이러한 이슈가 좀 더 가속화되지 않았나 싶다.
이러한 굉장히 빠르게 이루어지고 있는 생성형 AI 솔루션의 발달은
개발자의 종말론을 더더욱 부각시키면서
업계 전반이 큰 변화를 겪고 있는 것으로 보인다.
특히 이러한 변화 속에서 “프로그래밍을 몰라도 생성형 AI만 있으면 제품을 만들 수 있다”는
주장도 자연스럽게 힘을 얻고 있다.
최근에는 Saas 솔루션은 종말할 것이라는 다소 파격적인 이야기도 들리는 것으로 보면
소프트웨어 업계가 큰 격변의 시기가 온것임에는 틀림 없어 보인다.
허(虛): 빠르게 만들 수 있다는 환상
이런 상황에서 가장 주목받는 주장들은 서론에서 언급했다시피
‘프로그래밍을 알지 못한다고 하더라도
생성형AI를 이용하면 빠르게 제품을 개발이 가능하다’라는 주장이고,
실제로 이는 어느 정도 타당성이 있어 보인다.
정말로 움직이는 결과물을 단 몇초 만에 보여주기 때문이다.
하지만, 이러한 ‘빠르게 제품 개발 가능하다’는 주장의 가장 큰 맹점이 있는데
개발자의 존재 이유가 단순한 제품이나 기능개발에 있지 않다는 점이다.
만약, AI를 통해 그럴듯 한 솔루션을 만들었다고 치자.
이것에 얼마만큼의 비지니스성과 지속가능성이 있을까?
예컨대 AI에게 넷플릭스나 트위터, 인스타그램과 같은 페이지를 만들어달라고 요청한다면,
아마 실제로 그럴듯 하게 만들어 줄 것 이다.
아마 대체로 여기서 크게 한번 놀라고는 한다.
하지만, 이러한 인기 서비스들은 토이 프로젝트로 다루기 쉽고,
하나의 트렌드로 자리 잡아 관련 자료를 찾기도 어렵지 않다.
코드 또한 깃허브에 충분히 공개되어 있다.
즉, 구현 시간에 차이는 분명이 있을 수는 있으나
굳이 AI의 도움을 받지 않더라도,
그렇게 어렵지 않게 그럴듯하게 구현 할 수 있는 서비스라는 것 이다.
이미 공개된 코드들을 학습한 모델에게는
이와 같은 형태의 애플리케이션을 구현하는 일은 그리 어려운 작업이 아니다.
그러나 이미 글로벌 서비스로서 경쟁을 이겨내고 살아남은 솔루션과
유사한 형태의 애플리케이션을 하나 더 만드는 것에 과연 어떤 가치가 있을까?
더 정확히 말하면, 비즈니스성이 존재할 수 있을까?
더 나아가, 당신이 이 솔루션을 사용하려는 유저라면
어떠한 가치를 부여하고 얼마만큼의 비용을 지불할 수 있을까?
당신이 금세 만들 수 있는 제품을
다른 사람이라고 만들지 못할 이유는 없지 않을까?
결국 앞선 질문들을 충분히 고민하지 않은 솔루션은
상대적으로 높은 가치를 인정받기 어렵다.
만약 당신이 간단한 기능을 구현했다면,
다른 사람 역시 AI를 활용해 비슷한 기능을 구현할 수 있을 것이다.
그렇다면 그에 비용을 지불할 명확한 이유가 있을까?
누구나 쉽게 할 수 있는 일에는 희소성이 생기기 어렵다.
그리고 희소성이 없다면, 비즈니스적인 한계 역시 분명해진다.
물론 비지니스의 '생존'의 측면만 강조한다면,
생존에는 문제가 없어 보일 수 있다.
하지만, 희소성이 낮아지게 되면 주도권은 잃어버리게 된다.
이는 서비스 비용을 증가시키기 위한 가장 큰 명분을 잃게 되는 것이고,
잃지 않기 위한 싸움이 되는 순간, 하락의 길을 걷게 되는것은 자명하다고 볼 수 있다.
따라서 비지니스성과 지속가능성을 고려하지 않은 단순한 ‘개발’ 자체는
장기적인 관점에서는 큰 의미를 갖기 어렵다.
모래성 처럼 무너지기 때문이다.
그렇기 때문에 빠르게 개발한 제품은 필연적으로 품질이 낮아질 가능성이 높다.
물론 여기서 품질은 코드 품질에 해당되고,
단순히 기능의 버그가 있느냐 없느냐의 일반적인 QA와는 또다른 이야기 이다.
이런 상황에서 단순하게 생성형 AI를 이용해 빠르게 제품을 개발하는 것에 무슨 의미가 있을까?
단순한 수준의 결과물은 생성형 AI 이전에도 구글링을 통해 가능했다.
물론 그렇다하더라도 바이브 코딩이 전혀 쓸모 없다는 것은 아니다.
그 가치와 가능성은 이미 어느 정도 입증되었다고 볼 수 있다.
특히 개인적으로는 자동화 부분과 비엔지니어와의 커뮤니케이션 도구로서 활용 가능하다는 점에서
개인적으로는 긍정적으로 평가하고 있는데
자동화 부분에서 '코드 리뷰'는 팀 내부에 코딩 스탠다드가 잘 정리되어 있는 팀이라면
이를 프롬프트화나 서브에이전트로 만들어서 일정 수준까지는 위임이 가능하며,
'테스트 코드'도 테스트 관점만 잘 정리해서 전달하면 일정 수준 이상의 품질을 보여준다.
비엔지니어와의 커뮤니케이션 도구로서는
생성형 AI에 사진만 전달해주면 기본적인 형태의 CSS를 생성해주는데
디자이너와는 디자인의 프로토타입을,
매니저나 디렉터들에게는 작업 진행도 확인시켜줄 수 있기 때문에
비엔지니어 팀원들과의 원활한 커뮤니케이션을 위한 보조 도구로 활용 가능하다.
따라서, 기존 단순 반복적이며
실제 유저에게 가치를 전달하기 힘든 부분을 가능한 자동화하여
개발자들이 유저 가치 전달에 집중할 수 있게 해주는
하나의 도구로서는 훌륭하다고 할 수 있다.
다만, 이것이 곧바로 현재 운용되고 있는
훌륭한 상용 서비스 수준의 제품을 개발 할 수 있다는 것을 의미하지는 않는다.
실(實): 개발자의 실제 역할
이에 따라 좋은 개발자의 기준 또한 변화하고 있다고 볼 수 있다.
'코드'를 빨리 작성하는 것은 이미 생성형 AI가 빠르기 때문에
현재 시점에서는 AI에게 위임하는 것이 합리적인 선택이 되는 경우가 많다.
그 대신 크게는 전체적인 디렉토리 구성과 같은 디자인 부터
작게는 컴포넌트/함수/클래스 등의 구성까지,
즉, 프로그램 아키텍처를 구성할 것인지에 대한 '선택'과
현재 존재하는 시스템/프로그램 구성 뿐만 아니라
운용비용, 가용할 수 있는 인원 등의
현실적인 제약 조건에 따른 어떤 트레이드오프를 감수 할 것인가에 대한
'판단'할 수 있는지가 중요한 시점이 되었다고 개인적으로 생각하고 있다.
이를 한 단어로 정리하면 ‘판단력’이라고 볼 수 있다.
이는 내가 블로그의 다른 글에서도 특정 직업이 사라지는 것이
아닌 일부 역할이 사라짐으로서 시프트가 일어난다 것과
판단력이 중요하다고 자주 언급하고 있는 부분이기도 하다.
위의 요소들은 코딩 자체보다 중요함에도 불구하고,
잘 고려되지 않았던 이유는 비지니스적으로
우선 순위상 유저가 기능을 사용할 수 있게 빨리 코드를 작성해서 제공해야 하기 때문이다.
이제 비지니스성에 이어서 지속가능성에 대한 이야기를 이어서 해보자.
사실, 지속가능성은 어떻게 엔지니어링 되어 있는지에 달려 있다.
그리고 지속가능성은 시스템 아키텍처에 달려 있고
이 아키텍처는 이 세상에서 가장 좋고, 빠른 기술이나 제품을 사용해서 구성하는 것이 아닌,
적절한 운용 코스트로 운영이 가능한지가 그 무엇보다 중요하다.
매출과 운용 코스트가 비슷하다면 비즈니스성을 의심해볼 필요가 있고,
높다면 제품이 지속가능할 수 없음은 너무나도 자명하다.
프로그래밍 영역에 가까울 수록 확장성이 중요시 된다.
확장성이 부족하면 부족할 수록, 부채가 계속해서 쌓이기 때문이다.
실제로 내가 현재 소속되어 있는 회사에서
실제 유저가 자주 사용하고 있는 페이지가 있는데
이 시점에 회사에서는 제대로된 프론트 앤드 개발자가 없다는
현실적인 제약에 의해 백엔드 개발자가 일부 프론트 업무를 담당하는 바람에
확장성을 고려한 디자인이 되어 있지 않아
결국 현재 시점에서는 기능 하나 추가하는데에 꽤나 많은 비용이 들어가고 있는 상황이다.
즉, 대규모 리펙토링이나 재개발이 필요한 시점에 들어선것 이다.
하지만, 일반적으로 회사는 매출에 직접적인 영향을 주지 않는
대규모 리팩토링이나 재개발 작업을 쉽게 결정하지 못하기 때문에
대부분의 부채가 쌓여 있는 솔루션들은 몇 가지 폭탄을 달고 운용할 수 밖에 없는 상황에 빠져버리고 만다.
특히, 현재 회사는 코어 제품이 어느정도 자리를 잡아,
새로운 솔루션을 만들고 검토하고 있는
현재 내가 소속되어 있는 회사라면 더더욱 우선순위에서 밀려
대규모 리펙토링 작업을 하기는 매우 힘들것이라 판단된다.
이 처럼 어느 지점이 되면 리펙토링 비용이 터무니 없이 증가되는 순간
결국 새로 만드는 것이 더 좋은 상황이 되어버린다.
이미 시중의 많은 솔루션들이 이와 유사한 상황에 직면해 있을 것이다.
많은 개발자들이 이런 제약적인 상황에서 기능 개발을 하고 있다.
이러한 많은 현실적인 상황을 고려해서 사실상 경험이 전무한 비엔지니어가
단순히 생성형 AI를 이용해 기능 개발을 할 수 있을까?
실제 유저가 UI상에서 보이는 것 이상으로 내부 처리는 훨씬 더 복잡하다.
현실적인 제약이 있다면 더더욱 그러할 것 이다.
이를 AI 한테 맡긴다고 해보자.
아마 터무니 없는 토큰 비용이 발생할 것 이다.
그것도 예측 불가능할 정도로 말이다.
이 비용을 감내할 수 있다면, 현재로도 충분히 가능 할 것 이다.
정말 품질을 보증할지는 또 다른 문제이지만 말이다.
결국 우리가 필요한 것은 아키텍처의 확장성과 지속 가능성(품질)이 좋은 기능이지
단순히 움직이는 거적떼기가 필요한 것이 아님을 알 수 있을 것 이다.
생성형 AI의 현실적 한계
생성형 AI는 프로그래밍의 영역을 대신해주고 있기 때문에
좀 더 프로그래밍의 이야기를 해보자.
위에서 언급한 일반적인 인식과 다르게
비즈니스성이 있고 지속가능한 제품을 생성형 AI로 개발하기 위해서는
역설적이게도 오히려 더 탄탄한 프로그래밍 지식이 필요하다.
좀 더 정확히 말하면, 이러한 지식을 기반으로 한 ‘직관’이 필요하다.
모든 프로그래밍 언어에 대한 지식을 포함해
모든 기술과 스킬들을 습득하는건은 불가능하기 때문에
많은 경우 '직관'에 의한 판단이 이루어져야만 한다.
그리고 이를 위한 적정 수준의 프로그래밍 지식과 경험은 필요하다고 볼 수 있다.
(어디까지가 적정 수준인지에 대해서는 논란이 있을 수 있으므로, 여기서는 이야기 하지 않겠다.)
'직관'이 없다면 코드의 타당성을 '판단'할 수 없기 때문에
생산성 향상을 기대하기 어렵고, 경우에 따라서는 오히려 하락할 수도 있다.
적어도 내 경험상 생성형 AI는
확장성을 고려해 스스로 추론하며 코드를 작성해주지는 않는다.
이용자가 끊임 없이 이를 지적해주어야하고,
현재 시스템에 맞게 일관성있게 작성해주는지, 이 코드가 현재 시스템에 적합한지,
확장성은 충분한지에 대해서는 이용자인 개발자가 판단 및 검토 해야하기 때문에
이용하는 개발자의 수준과 판단력에 따라 증가할 수 있는 생산성이 차이가 있고, 심지어 하락할 수도 있다.
결국 생성형 AI는 생각보다 모든 사람에게 동일한 가치를 제공하지 않는다고 볼 수 있다.
어느 분야던 간에 직관을 가지고 있지 않는다면 그만큼 리스크가 증가할 수 있다.
또한 기본적으로 데이터를 모델이 기억하는 것은 모델이 데이터를 학습할 때 뿐이며,
이용자가 질문한 데이터는 곧바로 리얼타임으로 모델에 반영되지 않는다.
기술의 특성상 유저가 입력한 데이터는 수학적 모델에 맞게 재가공되어야 하며,
데이터가 많아질수록 처리에 더 많은 시간이 필요하기 때문이다.
이는 데이터의 양에 따라 더 많은 연산 자원(대체적으로 GPU)과
전력이 필요함을 의미하며, 이는 운용 비용 증대를 야기 한다.
현재 실리콘벨리에서 펼처지는 전력 이슈는 괜히 나오는 이야기가 아닌 셈이다.
극적으로 성능을 향상 시킬 모델이 연구 될 것을 기다리는 것 보다
지금 보다도 더 많은 연산 자원과 이를 운용/냉각 할 전기를 구하는 것이
예측가능하고 산출 가능하며 더 빠르다고 생각한게 아닌가 싶다.
나는 AI 쪽 필드에서 일하고 있고 있지 않기 때문에 정확한 상황은 알 수 없으나,
아마 모델 튜닝으로만 으로는 AI쪽 필드에서 빠르게 도달할 것 이라고
강력하게 어필하고 있는 AGI 수준의 생성형 AI를 만드는 것은 아무래도 한계가 있다고
판단한게 아닐까 개인적으로는 생각하고 있다.
또한 기본적으로 세션 기반에 가깝기 때문에,
세션을 끊어내거나 벗어 날 경우, 모든 기억을 잃어버린다.
게다가 질문과 응답이 쌓이면 쌓일 수록
읽기/처리 속도가 매우 느려지기 때문에 여러 제약이 동시에 발생한다.
(세션 특성상 사용하고 있는 PC스펙에 따라 다를 수 있다)
그렇기 때문에 복잡한 작업이 필요한 경우,
조건과 그에 따른 내용이 적혀있는 프롬프트를 작성해야만하는 것이고,
작성해준 코드가 많아지면 많아 질 수록 요구대로 작성했는지 눈으로 확인해야만 한다.
당연하게도 대다수는 무리 없이 동작하는듯 보이나,
품질적인 측면에서 아쉬운 경우도 적지 않다.
이 경우 프롬프트에 구멍이 있거나, 정확한 명령을 내리지 않은 경우가 많다.
물론, 생성형 AI를 API로 제공하는 업체측에서
비용 문제로 일부 성능을 제약할 가능성 또한 충분히 있다.
가능한 많은 파라메터를 생성형 AI로 전달해야만,
정확성이 좋아지지만, 그만큼 계산 비용도 증가하기 때문이다.
이러한 인식하에서, 결과물이 정말로 스스로 생각한 결과물이 나왔는지,
문제가 없는지 판단할 수 있는 판단력이 필요하다.
당연하게도 이를 고려할 수 없는
충분한 경험과 이에 따른 사고를 할 수 없다면
비지니스성이 충분하고, 지속가능한 제품을 개발하는 것은 현실적으로 쉽지 않다.
이 판단력에 대한 필수 조건으로
당연하게도 프로그래밍과 실제 업무에서 나타날 수 있는
인시던트, 디자인 실패 등에 대한
많은 경험 없다면 좋은 판단을 내리기가 매우 힘들다.
이러한 상황에서 과연 ‘빠른 제품 개발’에
어느 정도 가치가 있는지에 대해서는 다시 한번 생각해볼 법 하다.
매우 안타깝게도 단순한 기능 제공으로
좋은 멀티플을 받아내는 시대는 아이폰이 등장한 10년전에 이미 끝이 났다.
만약 일반적으로 잘 알려져있는 엔터프라이즈급 서비스나 시스템,
그러니깐 어도비 제품들을 포함한, AWS/SAP/Salesforce/Shopify 등의 시스템들은
작게는 만명, 크게는 수십만명, 어쩌면 수천만명의 이용자들을 감당해야하며,
수 많은 이용자들의 요구 사항을 반영하고 있는 이 시스템들은
공장에서 찍어내듯 일반적인 생성형 AI 솔루션으로는 만들어낼 수가 없다.
AI 인프라를 갖추고 있고 제약 없이 생성형 AI를 이용할 수 있는 기업들이라면 가능할 지는 모르겠다.
그 외의 기업이라면, 토큰 비용을 감당할 수 없을 것 이다.
과연 그 연산 비용 이상의 매출, 그러니깐 지속 가능한 비지니스성을 가질 수 있을까?
AI의 성능을 높이기 위해서는 더 많은 하드웨어를 붙이고 이를 가동하기 위한 더 많은 전기를 부여하거나
가능한 더 많은 정보를 AI에게 제공해야만 한다.
이러한 상황에서
간단한 버그를 찾는데 1억이나 10억이 든다면, 그것도 단 한번으로 보장 할 수도 없다면
지속가능성에 의문이 드는 것은 어쩔 수가 없다.
결국 단순한 '개발'만으로는 터무니없이 부족하다는 말이다.
엔터프라이즈급 시스템들까지 가지 않더라도
일반적으로 많은 사람들이 알고 있고, 사용되어져있는 시스템들은
매체에서 대단하다듯이 이야기하는
단순한 지렁이 게임이나 그럴듯 해보이는 웹페이지와는 차원이 다르다.
개발자는 사라질까?
그렇기 때문에 현재 상황에서 바이브 코딩에 대한
일반적인 인식은 꽤나 고평가되어 있다고 볼 수 있다.
AGI가 스스로 추론하고 타당성을 증명할 수 있는 수준에 이르지 않는 한,
개발자는 사라지기보다는 기존 업무의 일부에서 벗어날 가능성이 크다.
분야나 업무에 따라 다를 수는 있겠으나
업계에서 일하고 있는 나의 동료들이라면
개발자의 업무가 '프로그래밍'으로 한정되지도 않고,
오히려 좋은 제품이나 기능을 개발하기 위해서는
가능한 프로그래밍에 시간을 줄이고
그 외에 것에 시간을 투자하는 것이 좋다는 것은 충분히 공감하고 있으리라 생각 한다.
따라서, 생산형 AI에 의해 향상된 생산성을 바탕으로 더 많은 일을 하거나,
이전에는 시간 제약으로 하지 못했던 중요한 업무에 더 많은 시간을 사용할 뿐이다.
과거 개발과 품질에 시간을 할당할 수 밖에 없었던 것이
생산성 향상을 통해 디자인과 유저 경험(UX)에도 시간을 사용할 수 있게 된 것 처럼 말이다.
물론 지금 미국에서 진행되고 있는 수 많은 데이터 센터의 건설을 통해,
무한에 가까운 AI 칩들과 전기를 쏟아붓는다면, 어쩌면 AGI에 도달 할수 있을지도 모르겠으나
개인적으로는 아직 현실성이 낮아 보이며,
여러 부분에서 불확실성이 크다.
AI 칩들을 만들 자원과 시간,
그리고 이를 가동하고 냉각할 전기는 어디서 끌어온다는 말인가?
이 경우 막대한 유지 비용이 들 것으로 예상되는데
비즈니스적으로 성립할 수 있을지는 의문이다.
그렇다면, 왜 현재 이런 종말론이 가십거리로 계속해서 이야기되어지는 것 일까?
불과 5년전으로 시간을 잠시 되돌려보면, 이에 대한 힌트를 얻을 수 있다.
코로나라는 큰 파도가 우리에게 어떤 것을 강제하게 했는지 말이다.
코로나라는 특수성에 의해, 대면 접촉이 불가능해지자,
빠르게 변화하기 힘든 사회적인/문화적인 저항에 의해
DX가 이루어지지 않은 부분이 순식간에 바뀌면서
솔루션을 개발하기 위해 개발자의 수요가 폭팔적으로 증가되고
개발자의 몸 값이 치솟아 오르게 되었다.
기존 개발자는 물론이고, 아직 업계에서 실무적인 경험이 없는 사람들에게도
파격적인 제안을 하던 시대이다.
이러한 상황에서 모두 다 '프로그래밍이 미래다'라고 말하며,
특히 한국에서 '코딩 교육' 열풍이 분 것이 고작 5년 전이다.
2000년대 초반과 다르게 사회가 변하는 속도가 말도 안되게 빨라졌다.
이러한 상황에서
미래를 단정적으로 예측하려는 시도에 대한 대가는
종종 이렇게 크게 되돌아온다.
미래는 예측할 수 없다.
현재라는 제약조건 하에서 '관측'해보는 것 뿐 이다.
개인적으로는 현재 AI에 관한 이슈와 가십 또한 지금 상황과 크게 다르지 않다고 생각 한다.
지나치게 비관적이거나,
혹은 지나치게 확신에 찬 낙관이 공존하는 상황이다.
현재 미국에서 이루어지고 있는 대량 해고와
신규 채용이 다소 소극적인 이유를 개발자 관점에서 보면,
첫 번째는 코로나 시절의 과도한 채용과 임금 상승에 대한 인원 조정 혹은 비용 절감이고,
두 번째는 생성형 AI로 인한 기존 인원들의 생산성 향상이다.
첫 번째 이유는 수요 예측 실패로 인한 과도한 채용과,
과도하게 상승한 인건비를 감당하기 어려워졌기 때문이다.
비록 살고 있는 나라는 다를지라도 같은 필드에서 일하고 있는 입장에서
코로나 시절에 개발자들의 몸값이 크게 뛰어오른 것은 부정할 수 없는 사실이다.
생성형 AI를 이용할 때, 가장 큰 이점을 얻을 수 있는 개발자,
특히 프로그래밍으로 업무가 이루어지는 개발자들 하나하나에게
이제는 그러한 멀티플을 주기에는 힘들다.
5년 전에는 미래에 비지니스가 급격하게 성장하리라는 기대감에 대한 투자였지만,
결과적으로 실제로는 그러하지 못했기 때문이다.
전부다 비용인 셈이다.
경영자들의 판단이 항상 옳을 수는 없겠지만
(코로나 시점에 개발자들에게 멀티플을 부여해 대량 채용한 것 처럼)
이러한 상황에서 대량 해고나 채용 거부는
경영자 입장에서는 꽤나 입맛이 돋아나는 카드임에는 틀림 없다.
미국은 다른 국가들에 비해 채용과 해고가 비교적 유연하기 때문에
이 현상이 더 크게 보이는 측면도 있다.
두 번째 이유의 경우는 당연하게도
생성형 AI의 발전이 이렇게 빠르게 이루어지지라고 그 누구도 예상 하지 못했기 때문이다.
지금 시점에서 보면,
첫 번째, 수요 예측 실패로 인한 과도한 채용과 임금 상승에 대한 조정과
두 번째, 생성형 AI 사용으로 인한 기존 인원의 생산성 향상이라는
두 가지 요인이 동시에 작용하며 시너지를 발생시키고 있다고 볼 수 있다.
즉, 단순히 생성형 AI 때문에 개발자나 그 외의 직업들이 종말한다는 해석은
지나치게 비관적인 관점이라고 볼 수 있다.
대다수는 정말로 그러한 시대가 왔기 때문이라기 보다는
단순히 잉여 인력을 해고 하고 싶거나,
그럴 수 없다면 더 이상 비용을 증가시킨다고 이득을 볼 수 없다는 판단하에서의 제시 할 수 있는
현재 사용할 수 있는 가장 큰 명분으로 활용하고 있을 뿐이다.
어느 정도 인력 규모가 다시 균형을 찾고,
더 높은 생산성이 요구되는 시점이 온다면 채용은 다시 시작될 것이다.
그 사이에 AGI가 개발되지 않는다면 말이다.
요지는 단순히 생성형 AI 하나로만 '특정 직업의 종말'이라는 결론을 내리기는 어렵다는 점이다.
판단은 각자의 몫으로 남기고 싶다.
공포와 낙관 사이에서
이러한 상황에서 수 많은 사람들에 의해 가십거리로 이야기 되어지고 있는
‘언젠가는 대체된다’는 말을 저 멀리 구석에 밀어 넣자.
그 ‘언제’가 정확히 언제인지 알 수 없는 이상
기존 커리어의 방향을 틀어버리는 것은 너무나도 리스크가 크다.
현재 AI의 성장은 당장 내일 벽에 부딫쳐도 이상하지 않다.
이미 현실적인 제약에 한번 제동이 걸렸기 때문이다.
메모리나 저장 장치(HDD나 SSD)의 공급 문제와 더불어
이를 가동시키고 냉각 시키기 위한 현실적인 문제가 다가왔다.
데이터 센터를 우주로 띄우자는 이야기도 나오고 있는 시점이니
생성형 AI 기술이 현실적인 한계에 부딪친것 이다.
생성형 AI의 기본이 되는 NN 또한 역전파의 발견으로 80년대 부터 한번 붐이 이루어졌지만,
연산할 하드웨어와 학습 데이터의 한계로 이미 한번 현실적인 한계에 부딪쳐 힘을 잃어버린적도 있다.
기술적으로 가능하다는 것은 의미 없다.
중요한 것은 ‘언제’되느냐 이며, 그 것이 당장 내일인지,
5년 후인지, 아니면 20년 후인지가 중요할 뿐이다.
시점을 안다면, 그에 따른 충분한 대비를 할 수 있기 때문이다.
하지만, 이 시점을 그 누구도 알 수는 없을 것이다.
어떤 현실적인 한계에 부딪칠지를 누가 알 수 있겠는가?
이렇게 NN기반 기술이 빠르게 발달 할 수 있을지 그 누구도 예측하지 못했다.
2017년 구글 연구원들에 의해 발표된 일반적으로도 가장 잘알려져 있는 논문,
「Attention Is All You Need」 또한 범용 AI모델 개발을 위함이라기 보다는
기계번역을 위한 seq2seq을 개선하기 위해 시작되었으므로 처음부터 의도 된 것은 전혀 아니였다.
뿐만아니라, 생성형 AI를 통해 어떻게 비지니스화를 할 것인지에 대한 문제도 있다.
프로그래머의 업무에서 괄목적인 성과가 보이는듯 하나
사실 프로그래머들의 생산성 향상은 측정하기 어렵기 때문에
이를 시각화해서 증명해내기에는 다소 무리가 있다.
시각화 할 수 없다면, AI가 매출 상승에 어느정도 기여했고,
얼마나 가치가 있는지 또한 투자자들에게 어필하기가 힘들다.
따라서 현실속에서는, 기존 솔루션에 AI 기능을 넣어서 추가적인 매출을 올리거나,
기존 인간이 하던 일을 보조할 수 있는 AI 솔루션을 제공해 증명하고 있을 뿐이다
MS나 Google과 같이 다양한 견고한 비지니스를 하고 있는 회사를 제외한다면,
생성형 AI가 메인 비지니스인 회사는 생성형 AI를 제공 하고 있는 엔트로픽이나 Open AI 뿐이다.
하지만, 이 마저도 현재는 유지 비용에 꽤나 힘겨워하는듯 보이는건 나만의 생각일까?
다만, 물론 아키텍처 개선이 동시에 이루어지고는 있지만,
더 많은 하드웨어를 넣을 수록 AI의 성능이 지수 그래프 처럼 상승된다는 것은 이미 입증 되었다는 것 이다.
따라서 이러한 상황에서 어떤 선택을 하는 것은
위에서도 이야기 했듯이 이는 개인의 몫일 것 이다.
명분과 현실 사이에서
수 많은 매체가 조성하고 있는 공포성은 거짓은 아닐 것 이다.
세상을 위하고, 다른 사람들을 위한다는 말 또한 분명 거짓은 없을 것이다.
왜냐하면 정도의 차이는 있을 수는 있겠지만,
일반적이라면 누구든 '남의 도움이 되고 싶다' 하는 그러한 생각을 하고 있을 것 이기 때문이다.
내가 돈을 벌 수 있고, 다른 사람들에 정말로 도움이 될 수 있다면
이것 보다 훌륭한 비지니스가 없을 것 이다.
하지만, 목적의 99%가 돈을 벌기 위함이고 , 단 1%가 남의 도움이 되기 위함이라면 어떠한가?
더나아가 99.9%가 돈을 벌기 위함이고, 0.1%라면 어떠한가?
이러한 목적을 대외적으로 말해버리면,
진정성을 의심받기 때문에 그 누구도 속내를 드러내지는 않을 것 이다.
따라서 그 누구도 거짓말은 하지 않았으며,
그들에게 도의적인 책임 또한 묻기에는 다소 무리가 있다.
그러니깐 그들은 납득할 수 있는 선 혹은 그러한 명분하에서 그들의 일을 하고 있을 뿐이고,
이를 선과 악으로 나누기에는 다소 무리가 있다.
누구든 필요에 따라, 상황에 따라, 처한 현실에 따라
필요 한 만큼 선하며 악하다.
이렇게 될 수 밖에 없는 이유는
세상은 너무나도 많은 이해관계가 얽혀있기 때문이다.
거미줄의 한 가닥을 건드리면, 결국 전체가 함께 흔들리듯이 말이다.
내가 선을 행해야하는 상황 조차 이해관계가 얽힌다면
악을 행해야하는 순간들이 오고는 하는데
그 순간 스스로가 가지고 있던 신념이 무너지는 것 이다.
그렇지 않다면, 온갖 스스로 명분을 부여해서
마치 신의 말씀을 전하는 성기사가 되어 애써 무시하는 것 말고는 방법이 없다.
이 순간 위선에 발을 딛게 되는 것이니 이보다 최악일 수는 없을 것이다.
겉으로는 견고하게 서 있는 것처럼 보이지만,
사실 철근 만으로 겨우 서있는 것과 다름이 없다.
물론, 세상의 복잡성에 대한 이해를 포기했거나,
정치와 같은 이익 집단에 삶에 강력하게 묶여 있다면
단순하게 선과 악으로 나누어야만 납득을 할 수 있겠지만,
그러한 사람들 또한 그들이 납득 할 수 있는 그들의 일을 하고 있을 뿐이다.
그들의 현실적인 한계와 고민들이 그에 대한 명분일 것 이다.
조금 잔인하게 들릴 수 는 있겠지만,
상황만 여의치 않는다면 인간은 언제든지 인간을 죽일 수 있을 준비가 되어 있다.
어쩌면 인류 역사상 가장 평화로울지도 모르는 21세기 현재 조차 전쟁이 이루어지고 있으니
명분만 충분하다면 인간은 그 이상의 것도 충분히 할 수 있을 것 이다.
역사속의 제노사이드들은 현재에서 본다면 잔혹한 일이겠지만,
그 당시에는 그 집단하에서는 충분한 명분이 있었을 것 이다.
어쨋든 이러한 상황속에서 현실만 놓고 판단 해보았을 때,
더 넓게 보자면, 생성형 AI는 우리에게 범용적으로 활용 가능하고
더 좋고 날카로운 도구가 생겼을 뿐이며,
어떤 상황에 따라 어떻게 다루어야만 하는 판단력이 가장 중요한 시점이 현재의 상황이다.
경영자는 사실상 손을 놓고 AI 사원들이 자동으로 제품 개발을 하고 개선을 한다는 건
현재만 놓고 본다면 현실적으로 불가능하다.
아마 API토큰 비용이 매출보다 많이 나올 것 이다.
물론 이를 비지니스로 증명할 수 있는 사람이 있다면, 부디 그리 해봤으면 한다.
작더라도 가능성만 보여준다면, 주목받기 좋은 타이밍이 분명하니
강력한 믿음 가지고 있다면 해볼만한 배팅이 아니겠는가?
비지니스 만을 생각한다면, 기존 직업을 서포팅 하는 에이전트나,
기존 솔루션에 AI 기능을 추가하는 쪽에 머물러 있을 것으로 보인다.
그 외에는 꼭 필요하지만 반복적으로 해야하는 작업들에 대한 자동화가 가장 유력하며,
이 또한 처음에는 자동화가 의도대로 작동한다는 보장이 없으니 시행착오 속에서 튜닝 또한 해야만 할 것 이다.
물론 위에서 말한 스스로 추론하고 타당한지를 증명할 수 있는 AGI가 등장하게 된다면
다시 한번 정의할 필요는 분명히 있다.
하지만, 그 언제인가가 알 수 없는 불확실한 상황에서
특정 직업이 종말한다는 지나치게 비관적인 관점이나
이제 곧 AGI가 개발되어, 인류가 더 이상 일을 할 필요가 없고
인류는 일정 수준의 돈을 받으며 유유자적하게 생활할 수 있을 것이라는 생각 역시
다소 과도한 낙관일 수 있다.
실리콘밸리의 CEO들과 일부 관련 개발자들이 대중 앞에서
이러한 이야기를 다소 과격하게 하는 것은,
그 내용의 사실 여부와는 별개로
자신들의 회사 가치를 높이고 더 많은 투자를 유치하기 위한
역할을 수행하고 있는 것에 가깝다고 볼 수 있다.
스스로의 인생을 어떻게 주사위 던지기에 맞길 수 있겠는가?
그들은 스스로에 대한 확신과 명분이
분명히 존재하기 때문에 그렇게 할 수 있지만
그들 외의 수 많은 사람들은 그러한 준비가 되어 있다고 볼 수 있을까?
스스로의 인생은 스스로 구가했을 때야 비로소 삶의 가치가 있다고 생각하는
나에게 있어서는 둘다 썩내키지 않는다.
불확실한 미래에서 중요한 점은
타인이 내놓은 전망을 그대로 믿는 것이 아니라,
지나친 비관과 낙관을 모두 경계하며
내 스스로 방향을 정하고, 스스로를 믿고,
한 걸음씩 앞으로 나아가는 것이라고 생각한다.
본인 스스로가 그러한 현실에 비관적이고,
낙관적인 미래를 그리고 있다면 그리하길 바란다.
굳이 타인을 설득해만 이유는 특별히 없다.
내가 만약 누군가와 진지한 대화를 한다면,
내가 가지고 있지 않은 관점으로 부터
내 논지를 강화시키거나 틀렸다면 과감하게 버리기 위함이지
미래에 누구의 말이 맞는지 틀린지에 대한 배팅에는 전혀 관심이 없다.
적어도 나는 미래에 타임머신을 타고 과거로 온 사람이 아님을 확신할 수 있기 때문이다.
또한 마치 우리의 인생이 지금에 와서야 불확실해진 것처럼 이야기되곤 하지만,
사실 우리의 인생은 언제나 불확실했다.
개인적으로는 인류가 단순 노동에 벗어날 뿐이고,
중요하지만 시간상 할 수 없었던 높은 순위의 일들을
이제는 할 수 있게 되었을 뿐이라고 생각하고 있다.
결론
따라서 개발자들이 취해야 할 행동은 두 가지라고 생각한다.
개발자가 사라질지도 모른다는 공포에 머무르는 것이 아니라
새로운 생성형 AI라는 도구를 이용해
기존 반복 작업들을 어떻게 간단하게 처리할 것인가에 대한 생각을 하는 것과 동시에,
원래였다면 코딩보다 더 중요했지만, 비지니스 특성상 기능을 먼저 제공하는게 우선이 됨으로써
뒷전으로 미룰 수 밖에 없었던, 전체적인 아키텍처를 고려한 디자인과
현실적인 제약 속에서 어떻게 트레이드오프를 판단할 수 있는 능력을 계속해서 키워가는 일이다.
도구가 바뀌었다면 업무 방식 또한 변하는 것이 자연스럽다.
약 20년전에 수백 페이지의 책에서
구글의 검색 엔진이 프로그래머들의 지식 창고로 변화 했던것 처럼 말이다.
물론, 그 때 당시에도 구글의 검색 엔진이 각광 받으면서,
검색사라는 직업이 나타날것 이라는 예측이 있었지만, 실제로는 그러한 직업이 탄생하지는 않았다.
검색에 대한 판단이 그리 중요하지는 않았으며,
이에 따라 각 직업의 자질로서 검색 능력을 흡수한 것 이다.
예측이라는 것은 그러한 것 이다.
현재라는 제약 조건 하에서 미래를 판단하기 때문에
현재를 강하게 고정시키지 못한다면, 대부분 멋들어지게 빗나가게 된다.
세계는 항상 움직인다. 양자 세계관 처럼 말이다.
예측은 그 순간을 관측할 뿐이다.
따라서 모두가 우려하는 것과는 다르게,
개발자 뿐만 아니라 모든 직업에게는 하나의 기회라고 볼 수 있다.
왜냐하면, 이러한 패러다임의 전환점에서는
언제나 기존의 질서(order)들이 흔들리기 때문이다.
충분히 흔들려 균열이 난 시점에는
강력한 질서에 의해 힘으로 억눌려 있었던
부조리들이 하나 둘씩 수면 밖으로 나오기 시작하고
신뢰를 잃어버리는 순간 질서는 무너지게 된다.
그리고 늘 그렇듯이 새로운 질서가 그 자리를 대체하게 된다.
새로운 질서가 견고하게 정립되지 않는 그 순간 만큼은
해방의 순간이 되는 것 이다.
즉, 리스크라는 파도 위에서 서핑을 즐겨할 때 일지도 모른다는 것이다.
어쨋든 생성형 AI만 놓고 본다면,
회사는 직원의 생산력을 증대시켜 더 많은 매출을 올리고 싶기 때문에
비용을 들여서라도 생성형 AI를 사용하게끔 유도하고 있는 상황이다.
왜냐하면 지금의 제품들은 제품의 경쟁력을 보여주기 위해,
AI 기능을 솔루션에 넣고 싶어할 것이기 때문이다.
지금의 나의 회사는 이 두 개를 모두 가져오고 싶기 때문에
직원들에게 적극적으로 밀어주고 있다.
물론 토큰 비용이 만만치 않아 보이긴 하지만 말이다.
기존 개발자들은 이를 기회로 삼아 회사의 리소스를 활용해
여러 가지 시도를 해보며, 어떻게 사용해야만 자신의 생산성을 증대시킬 수 있는지를
여러 방면에서 시행착오를 겪어볼 수 있는 기회이다.
회사 입장에서 또한 마찬가지이다.
생산성의 증대가 확실하다면 해볼만한 배팅이다.
즉, 사용하는 도구가 바뀌었을 뿐이며,
기존과 동일하게 문제해결능력을 증대하는 것에 집중하면 된다.
적어도 정말로 인간 처럼 스스로 추론하는 AGI가 현실화되기 전까지는 말이다.
시장을 선도하고 있고 끝 없이 성장할 것 처럼 보이던 생성형 AI 솔루션들 조차
현실적인 문제에 이미 부딪치고 있다.
내일 세상이 멸망한다고 해도 나는 한그루의 나무를 심겠다는
이 격언은 언제나 불확실한 상황 속에서 살고 있는
우리들에게 무엇을 해야만 하는지를 가장 잘 나타내는 격언이 아닐까 나는 생각하고 있다.
