인터뷰/예측

(2023년) Matt Wels(전 구글 엔지니어) "3년 안 프로그래머 종말"

작성자
ㅇㅇ
작성일
2024-07-08 00:03
조회
1293
https://thenewstack.io/coding-sucks-anyway-matt-welsh-on-the-end-of-programming/

전직 컴퓨터 과학 교수이자 Google 엔지니어링 책임자는 생성 AI가 3년 내에 프로그래밍을 종식시킬 것이라고 생각합니다.

'컴퓨터 과학은 멸망할 것이다'
웰시는 프레젠테이션 시작과 동시에 맨 위 로프에서 내려와 "컴퓨터 과학은 멸망할 것이다"라고 주장했습니다.

"저는 이 분야가 근본적으로 바뀔 것이라고 생각합니다."라고 그는 설명했습니다. "컴퓨터 과학이 어떤 학문인지 생각해 보세요. 그것은 항상 아이디어를 프로그램으로 변환하는 것, 즉 한 가지 주요한 것에 관한 것이었습니다."

3-5년(2026~2028) 내에 AI 모델이 영어 설명만으로 어떤 프로그램이든 작성할 수 있는 능력을 갖추게 될 것입니다. 이는 AI 모델의 성능이 현재보다 10,000배 더 효율적이 될 것이라는 예상에 기반합니다.

https://mdwdotla.medium.com/hey-lets-fire-all-the-devs-and-replace-them-with-ai-8a0c3011d12

야, 개발자를 모두 해고하고 AI로 바꾸자!

이 글은 제가 최근 CACM에 기고한 글 '프로그래밍의 종말'의 후속 글입니다. 그 글에서 저는 코드 작성이 AI 학습으로 대체되면 어떤 일이 벌어질지에 대한 질문을 던졌습니다. 이번 글에서는 AI가 우리를 위해 소프트웨어를 작성하는 데 정말 능숙해지는 것이 단기적으로 어떤 영향을 미칠지 살펴보고자 합니다.

코드를 생성, 디버깅, 리팩토링하는 AI는 앞으로 몇 년 안에 훨씬 더 좋아질 것이 분명해 보입니다. 논란의 여지가 있다고 생각하지는 않지만, 이 주장을 조금 더 강화하자면 (1) CoPilot은 적절한 컨텍스트와 프롬프트가 주어지면 이미 새로운 코드를 생성하는 데 매우 뛰어나다는 점, (2) 더 많은 데이터와 더 큰 모델이 CoPilot의 발전을 가로막는 것은 아무것도 없다는 점 외에는 아무것도 없습니다.

코파일럿을 정기적으로 사용하기 전에는 코파일럿이 학부 숙제에 대한 해답을 앵무새처럼 되풀이할 뿐이라고 생각했습니다. 하지만 실제로는 CoPilot이 생각보다 훨씬 더 자주 제 마음을 읽어준다는 사실을 알게 되었습니다. 예를 들어 단위 테스트나 데이터 구조를 조작하는 코드의 다음 몇 줄 등 다음에 작성해야 할 코드를 생각하고 있을 때, 제가 입력하려던 코드를 CoPilot이 마술처럼 바로 작성해 주곤 하죠. 정말 대단하죠.

그렇다면 AI 코드 생성 기능이 지금보다 100배 향상되면 어떤 일이 벌어질까요?

0.001초 만에 PRD에서 코드 작성까지
AI가 코드 작성, 코드 리뷰, 버그 수정 등의 작업을 잘 해낼 수 있을지에 대해 회의적인 시각을 많이 들었는데, 이는 너무 어려운 문제이며 현재 AI 도구는 형편없고 앞으로도 계속 형편없을 것입니다. 이는 인간이 최근 데이터 포인트에서 추론하는 데 정말 서툴다는 것을 보여주는 전형적인 예라고 생각합니다.

제 생각에는 멀지 않은 미래, 즉 3년 정도 후(2026년)에는 소프트웨어의 높은 수준의 자연어 사양(예: PRD, 버그 보고서, Slack 스레드)을 가지고 AI에게 "완벽하게 괜찮은" 코드를 생성하도록 지시하는 것이 가능해질 것입니다. "완벽하게 괜찮다"는 것이 무슨 뜻일까요? 우선, 일반적인 인간 개발팀이 생성하는 코드의 품질에 대해 잠시 진지하게 생각해 봅시다. 저는 Google과 Apple 같은 곳에서 일해 본 적이 있는데, 그곳의 코드 품질이 항상 최고는 아니라는 점을 말씀드리고 싶습니다. 코드 리뷰를 종교처럼 여기는 Google에서도 스타일 가이드는 복음이며, 모든 팀의 코드는 회사의 다른 모든 엔지니어가 면밀히 검토하고 때로는 악용할 수 있습니다 - 솔직히 말해서 형편없는 코드가 많다고 말해야 합니다. (제가 회사를 떠났을 때보다는 적을 수도 있지만, 상관관계가 있는 것은 아닙니다.)

 

생략 ...

프로그래밍이라는 예술은 어떻게 될까?

위의 내용 중 10분의 1이라도 믿는다면 소프트웨어 엔지니어가 멸종 위기에 처한 종인 것은 분명해 보입니다. 하지만 인간이 더 이상 루프에 없을 때 컴퓨터 소프트웨어를 개발하는 예술과 과학은 어떻게 될까요?

모든 소프트웨어 시스템에서 코드 복잡성, 일반성, 성능 및 완료 시간 측면에서 균형을 맞춰야 합니다. 따라서 모든 개발자를 해고하고 CoPilot 2030으로 교체하더라도 (아마도 여전히 인간? ) PM과 AI 기반 개발팀이 소프트웨어 솔루션을 구축할 때 균형을 맞추고 선택할 수 있는 방법에 대한 대화가 필요합니다.

잠깐... 도대체 내가 무슨 말을 하는 거지?!? AI가 코드를 작성한다면, 작성하는 데 얼마나 걸릴지는 상관없다. AI에게 무엇을 하라고 하든 결과는 즉각적으로 나올 것이다. 대략적인 프로토타입을 생성하는 데 걸리는 시간과 같은 시간 안에 완전히 일반적이고 성능이 뛰어난 솔루션을 얻을 수 있다. 그리고 더 이상 결과 코드가 얼마나 복잡한지는 중요하지 않다. 더 이상 전통적인 의미에서 유지 관리가 가능하지 않기 때문이다. 화요일에 배포한 코드가 수요일에 제대로 작동하지 않는다면, 오래된 AI를 실행하고 몇 초 만에 1000개의 새 버전을 얻으면 된다.

요점은 인간이 더 이상 코드를 작성하고 유지 관리하지 않을 때 소프트웨어 엔지니어링의 예술에 대한 인간 중심적 개념이 모두 사라진다는 것입니다. 프로그래머로서 우리가 하는 일의 많은 부분, 즉 가장 많은 시간이 걸리는 일은 느리고 오류가 발생하기 쉬운 인간을 위해 일을 더 쉽게 하기 위한 인위적인 작업입니다. 즉, 주석을 작성하고, 나중에 리팩토링하기 쉽도록 코드를 구조화하고, 코드를 보다 범용적으로 만들어 재사용할 수 있도록 하는 것입니다. 문제는 코드가 주로 기계에 의해 생성되고 유지 관리된다면 이 모든 "추가" 작업은 전혀 불필요하다는 것입니다.

분명히 AI 코딩 기술은 이 지점에 도달하기 위해 갈 길이 멀지만, 저는 AI가 생성한 코드가 앞으로 몇 년 안에 표준이 될 것이라고 상상하는 것이 미친 짓이라고 생각하지 않습니다. Stable Diffusion으로 예술계를 강타한 KT 이벤트가 막대한 비용과 시간 절감을 감안할 때 머지않아 소프트웨어계에 강타할 가능성이 큽니다. 우리가 알아내야 할 것은 AI 이후 소프트웨어 산업이 어떤 모습인지, 그리고 지금 당장 준비하기 위해 무엇을 할 수 있는지입니다.
전체 0