AI를 대하는 개발자의 자세
AI가 개발자를 대체한다고?
요즘 AI가 개발자를 대체할 거라는 기사가 쏟아진다. CEO들이 인터뷰에서 "AI가 코드를 짜니까 개발자 수를 줄이겠다"고 말하고, 기술 블로그들은 "개발자 종말론"을 제목에 달아 조회수를 올린다.
그럴 수도 있다. 근데 나는 그게 AI를 잘못 쓰는 방법이라고 생각한다.
우리가 왜 좋은 코드를 쓰려고 했는지
Clean code라는 말을 떠올려보자. 우리가 왜 좋은 코드를 쓰려고 그렇게 노력해왔는지.
이유는 간단하다. 새로운 코드를 빠르게 추가하기 위해서다. 잘 정리된 코드베이스에 기능 하나 얹는 건 반나절이면 된다. 엉망인 코드베이스에 같은 기능을 얹으려면 일주일이 걸린다. 코드 품질은 미적 감각의 문제가 아니라 실행 속도의 문제다.
실행 속도가 빠르다는 건, 비즈니스적으로 가설을 빠르게 검증할 수 있다는 뜻이다. A/B 테스트를 일주일에 세 번 돌릴 수 있는 팀과 한 달에 한 번 돌리는 팀은 같은 시간 동안 배우는 양이 다르다. Clean code는 결국 비즈니스 실행력이다.
길을 내는 사람
때로는 아무도 가보지 않은 길을 가야 했다. 올바른 아키텍처, 적절한 추상화, 맞는 방법을 찾기 위해 오래 걸렸다. 며칠, 때로는 몇 주를 고민하고 삽질한 끝에 "이게 맞다"는 결론을 내린 적이 있을 것이다.
그게 헛된 시간이 아니었다. 그 고민의 결과물 위에서 뒤따라오는 팀원들이 빠르게 기능을 만들어냈고, 비즈니스가 움직였다. 선구자의 역할이란 그런 것이다. 느려 보이지만 뒤에 오는 모든 것을 빠르게 만들어주는 일.
반대로 이 과정이 잘못됐을 때를 우리는 기술부채라고 부른다. 급하게 대충 깔아놓은 길 위에서 팀 전체가 느려지고, 버그가 터지고, 신규 기능 하나 추가하는 데 온 팀이 매달리는 상황. 기술부채가 무서운 건 코드가 더러워서가 아니라 비즈니스가 느려지기 때문이다.
AI는 대신 써주는 게 아니라 빨리 써주는 것이다
여기서 AI 이야기로 돌아오자.
AI를 "코드를 대신 써주는 도구"로 보면, 자연스럽게 "그러면 사람이 덜 필요하겠네"라는 결론에 도달한다. 근데 그 프레임 자체가 틀렸다.
AI는 코드를 대신 써주는 게 아니라 빨리 써주는 것이다. 개발자가 방향을 잡고, 맥락을 설명하고, 결과를 검증하는 과정은 여전하다. 다만 그 사이에 있는 구현 시간이 줄어든다. 이전에 하루 걸리던 작업이 두 시간에 끝나고, 일주일짜리가 이틀에 끝난다.
그러면 남는 시간에 뭘 하느냐가 진짜 질문이다.
같은 인원으로 더 많은 일을 할 것인가
비즈니스 관점에서 보면 두 가지 선택지가 있다.
하나는 같은 기간에 더 많은 일을 하는 것이다. 개발자 5명이 한 달에 기능 3개를 만들던 팀이, AI를 쓰면서 기능 8개를 만든다. 가설 검증 횟수가 늘고, 제품이 빠르게 개선되고, 시장 반응에 빠르게 대응할 수 있다. 비즈니스가 성장한다.
다른 하나는 같은 일을 더 적은 사람으로 하는 것이다. 기능 3개를 여전히 만들되, 개발자를 5명에서 2명으로 줄인다. 인건비가 줄어든다. 비용 절감이다.
두 번째 선택은 비즈니스적으로 "우리는 더 이상 성장하지 않겠다"는 말과 같다. 비용을 줄이는 건 이미 충분히 잘하고 있어서 더 할 게 없을 때 하는 것이다.
빅테크는 다르다, 근데 대부분은 빅테크가 아니다
물론 빅테크처럼 이미 시장 점유율이 최고치에 가깝고, 제품이 충분히 성숙한 곳이라면 인원을 줄이는 게 합리적일 수 있다. 더 만들 기능보다 유지할 기능이 많고, 효율화가 곧 이익인 단계니까.
근데 대부분의 회사는 그 단계가 아니다. 만들어야 할 기능이 백로그에 쌓여 있고, 시장에서 아직 검증하지 못한 가설이 산더미고, 경쟁사가 매일 새 기능을 내놓는 상황이다. 이런 환경에서 AI로 개발 속도가 빨라졌으니까 사람을 줄이겠다는 건, 더 빨리 달릴 수 있는 차를 샀는데 목적지를 가까운 데로 바꾸는 것과 비슷하다.
내가 선택한 방향
나는 개발자로서 AI를 활용해 더 빨리, 더 많은 코드를 작성하고, 더 큰 비즈니스 임팩트를 만들기 위해 노력할 생각이다. 내가 개발자로 있는 한.
AI가 내 일을 뺏을까 걱정하는 대신, AI로 내가 할 수 있는 일의 범위를 넓히는 쪽을 택한다. 이전에는 시간이 없어서 못 건드렸던 영역, 혼자서는 엄두가 안 나던 규모의 작업, 이론이 부족해서 포기했던 문제들. 그런 것들에 손을 뻗을 수 있게 됐다.
도구가 좋아졌으면 더 많이 만들면 된다. 그게 개발자가 AI를 대하는 올바른 자세라고 생각한다.