올해는 정말로 많은 변화가 있었던 한 해였다. 래블업은 세일즈팀과 연구팀이 본격적으로 꾸려지는 등 조직 확장과 개편을 거치며 이제 거의 50명을 바라보는 조직으로 성장했다. 상반기만 해도 미국과 싱가포르, 동남아 등지를 돌면서 살인적인 출장 스케줄을 소화해야 했지만, 하반기에는 상당 부분을 세일즈 팀에서 직접 follow-up할 수 있게 되면서 출장을 많이 줄일 수 있게 되었다. 전 세계 여러 나라와 장소를 가보는 것 자체는 좋은 경험이지만, 일 말고 놀러 가고 싶다는 생각을 하게 되었다. 프로젝트 측면에서도 K-클라우드 ‘이종 AI 반도체 가상화 기술 개발’의 주관 연구책임을 맡게 되면서 모교이기도 한 KAIST와 함께 장기간 협업할 수 있는 기틀을 마련하였고, 어제 대국민 1차 공개발표회1가 있었던 ‘독자 AI 파운데이션 모델 개발’ 과제에도 Upstage와 함께 참여하게 되면서 NVIDIA B200 500장 규모의 클러스터를 직접 만져보며 여러 이슈들을 해결해보는 경험을 쌓을 수 있었다. 에너지나 식량 안보와 같이 국가적 산업 경쟁력에 큰 영향을 끼치게 될 ‘지능 인프라’의 기반이 될 독자적인 AI 모델 주권을 확보하기 위한 여정에 직접 기여할 수 있었다는 것은 큰 보람이기도 하다.
시장 환경 측면에서도 여러 변화가 일었다. Kubernetes가 본격적으로 컨테이너 환경에서 AI 워크로드를 잘 돌리기 위해 DRA (dynamic resource allocation)이나 Gang scheduling을 보다 쉽게 지원할 수 있는 추상화를 추가하는 등 기존에 Backend.AI가 수년 이상 앞서서 해결해왔던 문제들을 보다 적극적으로 접근하고 해결하기 시작했다. NVIDIA가 Groq의 핵심인력 인수와 기술 라이선싱을 통해 GPU 단일 아키텍처가 아닌 이기종 혼합 아키텍처를 통한 추론 비용최적화의 당위성을 간접적으로 증명해주는 한편, Slurm 스케줄러의 개발사인 SchedMD 인수를 통해 작년의 Run:ai 인수에 이어 워크로드 매니저 계층을 자사 스택에 더욱 깊게 통합하고자 하는 의지도 보여주었다.
개발자 개인으로서는 관점에 따라 우울하기도 하고 흥미롭기도 한, 냉탕과 온탕을 번갈아 경험하는 해이기도 했다. Agentic coding (혹은 일명 Vibe coding) 대중화로 인해, 코드를 직접 작성하고 고치며 느끼는 어떤 손맛과 말초적 쾌감은 줄어들고 대신 이로 인해 가능해진 어마어마한 효율로 기존에 엄두를 못냈던 작업들을 처리할 수 있다는 즐거움과 그걸 활용해야만 한다는 압박감을 동시에 느끼게 되었다. 이쪽 분야에서 가장 유명한 개발자 중 하나라고 할 수 있는 Andrej Karpathy조차도 FOMO (fear of missing out)을 호소할 정도2였으니 말 다했다. 대략 5월 정도부터 본격적으로 Claude Code를 사용해서 코드 작업을 하기 시작했는데, 불과 반년 정도만에 몇 차례 모델 업그레이드를 거치고 Google의 Gemini 3나 OpenAI의 Codex 등이 등장하며, 초기에는 많이 아쉬웠던 코드 생성 품질이 놀라운 속도로 개선되고 있다. Agentic coding의 원리나 활용 방법을 일찍 터득한 몇몇 개인들의 노하우조차도 도구에 빠르게 통합·적용되면서 그 간극이 점점 좁혀지고 있다.
오랜 기간 오픈소스를 만들기도 하고 기여해오기도 왔던 사람으로서 이 agentic coding 흐름이 어떻게 나아갈지에 대해서도 여러 고민과 흥미로운 지점들이 많다. 코드를 두고 사람과 사람이 공개된 커밋과 댓글을 통해 서로 의견과 피드백을 주고받으며 진행하던 오픈소스 개발 프로세스가, 사람과 AI agent가 각자의 개발환경에서 굉장히 짧고 빠른 사이클로 피드백을 주고받은 후 그 과정이 git이나 GitHub 상의 기록에 드러나지 않은 채 그 결과물만 갖고 리뷰해야 하는 상황으로 바뀌면서, 메인테이너 입장에서는 코드를 리뷰해야 하는지 그 사람이 작성한 프롬프트를 리뷰해야 하는지 아니면 그 사람의 배경지식을 리뷰해야 하는지에 대한 혼란도 생겼다. 대표적으로 Ocaml 컴파일러 프로젝트에 새로운 CPU 아키텍처 지원을 추가하는 AI로 생성된 1만줄 이상의 대규모 PR을 개발자들이 거부한 사례3와 같이, 인간이 더 이상 코드의 디테일에 대해 다 파악할 수 없는 속도로 코드가 개선되고 패치될 때 그 코드에 대한 리뷰와 유지보수 책임을 누가 어떻게 질 수 있을 것인가에 대한 이슈가 나오기 시작했다. 나 또한 aiodocker에서 누군가 AI로 생성한 SSH transport 기능을 추가하는 PR4을 올려서 이걸 어찌하나 하다가 나도 AI를 활용해서 리뷰하고 수정하는 방식으로 대응하되 일단은 포괄적으로 AI를 사용한 인간 기여자의 credit을 존중하는 방향으로 결정하기도 했다. 특히나 AI 모델이나 서비스들 자체도 빠른 속도로 발전하고 있는 데다 생성형 AI 자체가 근본적으로 결정론적이 아닌 확률적으로 동작하는 LLM에 기반을 두고 있기 때문에, 프롬프트를 잘 저장해둔다 한들 동일 코드에 다시 적용하였을 때 재현 가능성이 보장되지도 않는다. 모델까지 저장할 수 있다 하더라도 그 모델을 다시 실행(replay)할 수 있는 환경을 만드는 것도 엄청난 자본이 들어가기 때문에 더더욱 그렇다. 기존에는 코드 자체를 두고 오픈소스 기여에 대한 가치평가를 할 수 있었지만, 더 이상 코드에 가치를 두지 않게 되었을 때 재현가능성이 보장되지 않는 AI(와 이를 사용하는 사람)의 생산과 기여 행위에 대해 어떻게 credit을 부여할 수 있는지에 대한 고민이 필요해지고 있다.
근본적으로 코드라는 생산물 자체의 가치가 급격하게 떨어지고 있다는 것은 부정할 수 없는 변화로 보인다. 오픈소스라 하더라도 그 오픈소스를 유지보수할 수 있는 능력은 실제로 그 코드에 기여한 경험치를 갖고 있는 소수의 사람들로 한정되었기 때문에 발생하는 해자와 장벽들이 더 이상 의미가 없어지고 있다. 시스템과 아키텍처 설계 역량이 충분한 사람이라면, 소프트웨어 개발팀에 어떤 역할을 하는 사람들이 필요하다는 것을 잘 이해하고 있는 사람이라면, 정말로 눈으로 어떤 서비스를 한번 훑어보는 것만으로도 충분한 AI 사용 예산이 있다는 가정 하에 한두 달이면 웬만한 서비스와 제품은 카피할 수 있는 세상으로 가고 있다. 지금 당장은 여전히 컴퓨터과학을 잘 이해하는 개발자들이 마무리를 해줘야 하는 경우가 대부분이지만, 개발자들 사이에서는 ‘수제코드 파인다이닝’ 같은 말까지 나올 정도로, 인간이 코드를 직접 손대야만 하는 영역은 아주 니치한 도메인 문제들로 좁혀질 것으로 예상된다. 기존에는 어떤 소프트웨어 개발팀의 가치는 코드의 여러 디테일한 설계와 구현에 대한 컨텍스트를 갖고 있는 인간 두뇌의 총합이라고 했는데, 이제는 AI가 사람보다 훨씬 빠른 속도로 지치지 않고 코드를 읽고 쓸 수 있기 때문에 이러한 가치 정의 또한 변할 수밖에 없어보인다. AI의 context 길이가 사람 여러 명의 수 개월 ~ 수 년에 이르는 작업량을 소화할 수 있을 정도로 길어진다면, 소프트웨어 개발의 정의가 앞으로는 ‘특정 프로젝트에 대한 컨텍스트의 총합을 들고 있는 AI agent를 하나 gardening & steering하며 키우는 활동’으로 재정의될 수도 있겠다. 인간으로 이루어진 개발팀의 가치는 이 gardening과 steering을 더 잘하기 위한 배경지식과 경험을 얼마나 갖고 있는지로 그 의미가 변화할 것이다. 그리고 이러한 형태의 변화는 앞으로 AI가 인간의 생산작업 효율을 추월하게 되는 많은 다른 분야에서도 동일하게 발생할 것이다.
이런 변화 속에서, 신입 개발자들의 취업난은 국내와 해외를 막론하고 너무나 심각해지고 있다. 모호한 문제 정의를 구체화하고 break-down해서 신입 개발자들에게 명확히 정의된 일감으로 나누어줄 수 있는 역량을 가진 경력자들에게는 AI 도구의 발달이 엄청난 날개를 달아주고 있기 때문이다. 소수의 시니어 엔지니어가 대부분의 일감을 AI와 함께 처리할 수 있게 되면 신입 엔지니어를 채용할 유인이 줄어든다. 이렇게 엔지니어 수가 줄면 중간관리자나 매니저 역할을 할 사람들도 덜 필요해진다. 하지만 현재의 그런 시니어 엔지니어들은 시행착오와 긴 시간 경험을 쌓음으로써 존재하는 것이기 때문에 많은 사람들은 그 사람들이 은퇴하게 되면 어떡하지 하는 걱정도 동시에 하고 있다. AI의 발전으로 소프트웨어 개발의 전체적인 수요가 줄기는 커녕 오히려 그동안 인건비와 같은 경제적 이유로 굳이 전산화하지 않았던 문제들까지 소프트웨어로 구현하게 된다면, 결국 한 명의 시니어가 처리할 수 있는 업무량은 한계가 있기에, 새로운 엔지니어들을 어떻게 시장에 진입시키고 성장시킬 것인지에 대해서는 다시 고민과 수요가 생길 수도 있다. 오히려 기존 개발자와 달리 처음부터 agentic coding에 익숙한 새로운 세대가 등장하여 활약할 수도 있다는 희망섞인 예측도 있고, AI로 인해 평균적인 인력의 사고력이나 문제해결력이 너무 낮아져 사회문제가 될 것이라는 비관적인 예측도 있다. 아마도 실제는 그 중간 어디쯤에 있지 않을까?
개인적으로는 연차 외에 별도로 있는 여름 바캉스 휴가도 못갔을 만큼 정신없는 한해였다. 뭐 원래 C-level이기도 하고 창업자이기도 하므로 휴가라는 것은 연차 상관 없이 알아서 잘 쉬어야 하는 것이긴 하지만, AI 분야가 문자 그대로 미쳐돌아가다보니 알게 모르게 심리적 압박감도 있는 데다 실질적으로 내가 일하는 방식을 변화시켜야 할 만큼 그 발전상 자체가 스스로 양적 되먹임을 하고 있는 상황이라 더욱 그랬던 것 같다. 실리콘밸리에서조차 996 (9시 출근 9시 퇴근 x 6일) 근무를 한다느니 이런 얘기가 나오고, 트럼프의 미국과 시진핑의 중국이 무역전쟁을 통해 계속해서 긴장을 불어넣고 있는 데다, 국내외 고객사들도 더욱 규모가 커지고 도메인이 확대되면서 모든 것이 빠르게 변하는 이 분야에서 엔터프라이즈 솔루션으로서 ‘안정성’이라는 가치를 제공하는 것이 얼마나 도전적인 일인지 계속해서 느끼고 있다. 한편으로는 그동안 래블업이 성장해온 발판이 되었던 기술들의 그 다음 스텝이 무엇인가에 대한 고민도 계속되었고, 정규님의 바이브코딩과 함께 다양한 시도들을 해보고 있으나 여전히 무엇이 정답이라고 딱 결론내기는 어려운 상황이다.
올해는 창업 11년이 되며 해외 확장을 비롯하여 여러 모로 새로운 도약을 준비해야 하는 해이기에 더욱 정신없는 일들이 펼쳐지지 않을까 싶다. 정신 없이 모두가 달리고 있지만, 멘탈과 건강을 잘 부여잡고 장기 레이스를 할 수 있도록 컨디션을 유지하는 것도 계속 잘 신경써야 되겠다.