AI 시대에 SW개발자의 역할은?

SW개발자

by 박세환

요즘 직장인들 대부분이 Chat GPT를 포함하여 생성형 AI를 사용한다고 한다. 특히나 SW개발자들은. 속도도 빠르고 오류도 적은데 안 이용할 이유가 없다. 대신 이렇게 가다가는 어떻게 될까? SW 개발만 20년 넘게 하신 K책임님에게 물어봤다.


지금까지 차량용 내비게이션을 포함하여 다양한 제품을 개발하신 K책임님은 말했다. AI는 꼭 전화번호부 같다고. 찾으면 나온다. 답이라고 할 것도 아니다. 예전에는 전화번호를 외우고 다녔지만 지금 머릿속에 있는 번호가 몇 개나 될까? 가족 이외에 기억하고 있는 번호가 있기는 할까?


확실한 비유였다. 전화번호부에서 찾은 번호에 기뻐하는 사람은 많지 않을 것이다. 당연한 것이기 때문이다. 그리고 당연히 이용해야 한다. 다 외우고 다닐 수 없으므로. AI를 이용하고 안 하고는 이제 선택이 아니라 필수다. 다만 어떻게 이용하는가가 중요하다.


AI가 항상 정답을 말해주지는 않기 때문이다. 틀린 답도 진짜 같이 말해준다. 그럴싸하게 만들어준 SW코드를 넣어도 다 돌아가지는 않는다. 오류가 존재한다. 그것을 찾을 수 있는 실력이 필요하다. 사소한 오류 하나를 찾을 수 있는 실력이.


C언어부터 파이슨까지 프로그램 언어를 사용하신 K책임님도 SW코드를 검토할 때면 놀란다고 한다. AI의 SW 코딩 스킬이 대단하다고. SW개발자 중에는 코드를 간략하게 짜는 스킬을 갖고 있는 사람들이 있다. 남들이 코드 1000줄로 동작시킬 것을 10줄로 동작시킬 수 있는. SW는 그 10줄 짜는 개발자에 포함된다. 왜냐하면 오픈소스에서 10줄 짜는 개발자의 코드를 찾아 학습하였으므로.


이러니 AI를 안 쓴다면 뒤떨어질 것이다. 시대의 흐름이니깐. AI가 중급 개발자의 역할까지 수행 가능하다고 한다. 대신 고급 개발자의 역할을 하기에는 부족하다. 즉, SW개발자가 살아남기 위해서는 고급 개발자의 역할이 필요하다. 그러면 고급 개발자는 어떤 일을 할까?


코드를 잘 짠다고 고급 개발자가 아니다. 전 챕터에서도 얘기하였듯이 큰 그림을 그릴 줄 알아야 한다. 어플리케이션이나 미들웨어, BSP 등 전체 시스템을 파악하여 거기에 맞는 코드를 AI로 설계해야 한다. HW, 기획, 디자인 등 타부서와 논의도 가능해야 한다. 그리고 시스템이 다운 됐을 때 어디가 오류인지 찾을 줄 알아야 한다. 경험도 필요하다는 말이다.


K책임님이 신입일 때는 임베디드 시스템의 메모리가 작았다고 한다. 그래서 누가 얼마나 코드를 짧고 효율적으로 짜는 것이 실력이었다. 즉, 그 시스템의 최적화가 목적이었다. 용량이 작은 메모리를 사용하면 동급의 경쟁사 제품 보다 가격을 낮출 수 있었기 때문이다.


그런데 세상이 바뀌었다. 지금은 메모리 가격의 하락 및 용량이 증가되었다. 대신 고객에게 어필할 수 있는 UX 및 UI 측면이 강조되고 있다. 이런 고객의 니즈를 파악하는 것도 SW개발자가 커나가기 위한 방향일 것이다. 더 자세한 사항은 강의를 통하여 전달드릴 계획이다.

이전 02화어디까지가 HW야?