AI는 SW 개발을 어떻게 변화시킬 것인가

AI(Artificial Intelligence)는 유망한 기술 혁신 수단으로 주목받고 있지만, SW 개발과는 거리가 먼 것으로 치부되어 왔다. 지난 수년 동안 SW 개발과 관련한 AI 역할에 대해 여러 의견들이 제시되었지만 실질적인 결과로 이어지지는 못했다.

하지만 가능성은 충분히 높다. 파이썬(Python) 프로그래밍 언어에 대한 관심이 높아지고 있는 것을 보면 개발자들이 흥미를 갖고 있다는 것을 알 수 있다. 스택 오버플로우(Stack Overflow)의 연례 설문조사에 따르면, 회원들이 질문한 횟수를 기반으로 파이썬의 ‘인기’와 ‘관심’이 증가하고 있음을 알 수 있다. 이는 머신러닝 기반 챗봇을 위한 필수 언어로 자리매김하고 있다.

또한 깃랩의 2020년 글로벌 데브섹옵스(DevSecOps) 설문조사에 참여한 개발자의 약 4분의 1에 해당하는 응답자가 AI와 머신러닝을 이해하는 것이 미래의 경력에 중요한 스킬이 될 것이라고 답했다. 그리고 약 16%의 테스트 담당자들은 테스트를 위해 현재 팀이 봇을 사용하고 있거나 AI 및 머신러닝 도구를 갖추고 있다고 응답했다.

그렇다면 테슬라(Tesla)가 자율주행 자동차를 만들고 있는 지금, 자율 코드작성이 그리 먼 이야기일까? 최소한 10명 이상의 데브옵스(DevOps) 실무자들과 업계 분석가, 그리고 깃랩의 경영진에 따르면, 이러한 SW 개발의 미래는 더 이상 먼 이야기가 아니다. 이제 이들의 견해를 살펴보자.


점진적인 발전

깃랩은 AI가 점진적으로 도입될 것으로 판단하고 있다. 깃랩의 CEO인 시드 시브랜디(Sid Sijbrandij)는 “미래의 모든 SW 세트는 일부 절차적 코드와 일부 (AI)모델의 조합으로 구성될 것이다. 그리고 시간이 지나면서 이 모델이 점점 더 많은 코드를 처리하게 될 것이다”라고 설명했다. 그러나 시드는 AI의 역할에 대해 “특이한 활동을 하는 것이 아니라 라이브러리나 모델에 대한 통합 호출 기능을 수행할 것으로 생각한다”고 덧붙였다.

깃랩의 수석 개발자인 브렌든 오리어리(Brendan O’Leary)는 앞으로 10년 후 코드 개발에서 AI가 훨씬 더 중요한(또는 유용한) 역할을 수행할 것이라는 점은 자명한 일이라며, “하지만 AI가 인간을 대체하는 것은 아니다. 중요한 것이 무엇인지 파악하는 인간의 역할을 더욱 중요하게 만들 것이다”라고 언급했다. 브렌든은 모든 데이터를 신속하게 분류하여 코드 작성자들이 필요한 영역에 집중할 수 있도록 세부 작업을 수행하는 제2의 눈에 AI를 비유한다. 그는 “예를 들어 컴퓨터 보조진단(CAD, Computer-Aided Detection)은 식별이 어려운 1mm 크기의 종양을 찾아야 하는 유방 조영술에서 매우 중요하다. CAD는 2차적 재검토를 통해 관심영역을 표면화시킬 수 있기 때문에 가치가 있는 것이다. 이것이 바로 SW 개발에서 AI에 기대할 수 있는 모델이라고 생각한다”고 설명했다.

레드햇(Red Hat)의 SW 엔지니어이자 깃랩 히어로(GitLab Hero)인 카를로스 에두아르도 아랑고 구티에레즈(Carlos Eduardo Arango Gutierrez)는 ID 문제뿐만 아니라 솔루션을 제안하는 봇의 기능에 AI가 큰 이점을 제공할 것으로 판단하고 있다. 카를로스는 “당신의 코드가 잘못되었다고 말하고, 이를 고치는 방법을 제안할 수 있는 봇을 기다리고 있다”며, “봇이 대신 테스트를 실행하고, 이를 해결할 것이기 때문에 우리는 더 이상 난관에 봉착하여 고심할 일은 없을 것이다”라고 언급했다.


튜링 봇(Turing Bot)을 만나다

AI가 SW 개발에서 백스톱/코드 테스트/QA 역할을 수행할 것이라는 점은 분명하지만, 포레스터 리서치(Forrester Research)에 따르면, 그 이상의 역할도 기대할 수 있을 것으로 보인다. 2020년 9월에 진행된 ‘SW 개발의 미래: AI는 어떻게 SW 개발의 70% 이상을 자동화할 수 있는가’라는 웨비나에서, 부사장 겸 최고 분석가인 디에고 로 주드스(Diego Lo Giudce)와 마이크 구알리에리(Mike Gualtieri)는 10년 이내에 ‘튜링 봇(Turing Bot)’이 SW 아티팩트에서 코드를 생성할 것이라고 주장했다. 이 웨비나에서는 이러한 봇을 주도하는 기술로 자율 테스트, 자동 머신러닝(예측), 강화 학습 및 머신 코딩 등을 제시했다.

이는 상당히 과감한 예측으로, 아직까지 데브옵스 팀은 해결해야 할 많은 과제를 안고 있다. 이것은 프로세스와 문화의 변화로 이어질 것이며, 개발자의 사고방식에도 전면적인 변화가 필요할 것이다. 포레스터는 개발자가 “앱의 개발 요건, UX 설계 및 솔루션 아키텍처를 포함한 보다 정확한 산출물과 패턴을 정의하는 작업”을 지금부터 시작할 것을 권고하고 있다.


두려워할 필요는 없다

중요한 것은 AI는 인간이 제공하는 데이터만큼의 능력만을 가진다는 것이다. AI는 사람을 대체할 수는 없다. 비터지아(Bitergia)의 CEO이자 깃랩의 히어로인 호세 만리케 드 라 푸엔테(Jose Manrique Lopez de la Fuente)는 “더 이상 개발자가 필요하지 않은 것이 아니다. AI는 인공지능이지 지능은 아니다.”고 언급했다.


개발자의 경력은 미래에도 보장될 수 있는가

변화하는 역할과 새로운 기술의 등장, 그리고 AI의 잠재력(또는 위협) 등에 직면하면서 SW 개발자들에게 중요한 질문이 대두되고 있다. 과연 미래에도 경력을 보장받을 수 있을까?

기술 산업에 있는 모든 사람들은 변화가 매우 빠르게 전개된다는 것을 잘 알고 있다. 무어의 법칙(Moore’s Law)이 바로 좋은 예이다. 하지만 이러한 변화에는 스킬이나 경력에 잠재적으로 영향을 미칠 수 있는 큰 변화(‘Big Change’)들이 있다. 세계경제포럼(World Economic Forum)은 플루럴사이트(Pluralsight) 블로그에 올린 글에서 “거의 모든 산업 분야에서 기술과 여러 변화의 영향으로 직원들이 보유하고 있는 기존 스킬의 수명이 단축되고 있다”며 미래에 대한 우려스러운 견해를 나타냈다.

그렇다면, 미래에도 충분히 활용될 수 있는 스킬은 무엇일까? 우리는 14명의 데브옵스 실무자와 분석가, 그리고 깃랩 경영진들의 의견을 들어보았다.  [기사 더보기]

 


[출처 : 아이티데일리(https://www.itdaily.kr)]

[기자 : 유인철 깃랩코리아 이사, 솔루션 아키텍트]