News Feed

AI가 코드를 짜는 시대, 소프트웨어 개발자는 무엇을 하는가

컨텐츠 정보

  • 조회 31

본문

소프트웨어 엔지니어가 지금 무엇을 해야 하는지, 이제는 모르겠다. 코드를 짜야 하는가? 아니면 시스템을 설계해야 하는가? AI 에이전트가 모든 것을 바꿔놓았고, 어떻게 생각해야 할지조차 불분명하다.

필자는 더 이상 코드를 많이 작성하지 않는다. 본업에서는 클로드에게 분석, 계획, 코드 작성의 대부분을 맡긴다. 사이드 프로젝트는 100% 클로드 코드가 작성하며, 일부 프로젝트에서는 코드를 아예 검토하지 않았다. 클로드를 신뢰하고, gStack이 코드를 검토해주기 때문이다.

따라서 여전히 소프트웨어 개발자라고 할 수는 있어도 더 이상 프로그래머라고 하기는 어렵다. ‘소프트웨어 개발자’라는 역할 안에서도 하는 일의 성격이 완전히 달라졌다. 코드를 직접 작성하는 것과 AI에게 코드 작성을 지시하는 것은 본질적으로 다른 행위다. 직접 작성한 코드를 검토하는 것과 에이전트가 작성한 코드를 검토하는 것도 같지 않다.

에이전트에게 코드를 맡기는 것은 다른 개발자가 대신 코드를 짜주고 그것을 검토하는 것과 같다. 직접 코딩하던 것과는 완전히 다른 경험이다. 오탈자와 버그를 디버깅하는 것이 아니라, 코드의 실제 기능 자체를 디버깅하고 에이전트에게 발견한 문제를 수정하도록 지시하는 방식으로 바뀐다.

득과 실

마이크로매니징을 마다하지 않고 어떤 지시에도 불평 없이 따르는 개발자 옆에서 작업 과정을 지켜보는 것과 같은 형태다. 코딩과 반복 작업이 훨씬 빨라지지만, 불명확한 사고의 대가도 그만큼 커진다. 직접 코딩하는 경험은 잃지만, 생산성은 얻는다. 대개는 몇 배가 아니라 자릿수가 다른 수준이다.

이 변화를 아쉬워하는 개발자도 있고, 잃어버린 것이 무엇인지조차 인식하지 못하는 개발자도 있다. 어느 쪽이든 분명히 어딘가에서는 뒤처지고 있다.

필자는 주저 없이 AI 코딩에 뛰어들었지만, 모든 것이 맞아떨어지며 시간 가는 줄 모르고 빠져들던 그 몰입감은 그리울 것이다. 작업을 에이전트에게 넘기면서, 한 줄 한 줄 직접 타이핑하며 쌓아온 코드베이스에 대한 깊은 이해도 함께 잃게 된다. 결국에는 수년에 걸쳐 힘들게 쌓아온 코딩 실력 자체를 잃을 수도 있다.

그래도 괜찮다. 잃는 것보다 더 많은 것을 얻을 수 있다고 믿기 때문이다. AI를 활용하면 하루 오후 만에 작동하는 웹사이트를 구축할 수 있다. 경험이 많지 않은 영역도 개발할 수 있다 — 주로 프론트엔드를 담당했는데, 이제는 백엔드 구축도 어렵지 않다. 익숙하지 않은 언어로도 코딩할 수 있다. 클로드 코드는 필자보다 훨씬 나은 SQL을 작성한다.

변화하는 역할

코딩의 지루한 부분은 완전히 사라지고, 좋아하는 부분에 더 집중할 수 있다. 예컨대 클로드는 원하는 만큼 얼마든지 유닛 테스트를 작성해준다. 코딩 전에 먼저 유닛 테스트를 작성할 수도 있고, 시스템을 구축하면서는 모든 테스트를 통과하도록 만들어준다. (유닛 테스트 작성을 즐기는 개발자가 실제로 있기는 할까?)

하지만 문제가 발생할 가능성도 있다. 설계대로 작동하기만 하면 무조건 승인하고 싶은 유혹을 떨치기 어렵다. “내가 원하는 것을 해줘”와 “내가 원하는 것을 올바른 방식으로 해줘”는 다른 말이다. 모든 것이 처음부터 잘 작동할 때 집중력을 유지하고 제대로 주의를 기울이는 것 자체가 하나의 과제가 된다.

가까운 미래에 소프트웨어 엔지니어의 직무 기술서가 정확히 어떤 모습일지는 아직 불분명하다. 수십 년간 코드 작성은 곧 직무 그 자체였다. 지난 몇 달 사이 그 공식은 사라졌고, 아직 형태를 갖추어가고 있는 무언가로 대체되고 있다.

키보드는 여전히 눈 앞에 있다. 하지만 그 키보드로 하는 일은 어느새 완전히 달라졌다.
dl-itworldkorea@foundryco.com

관련자료

댓글 0
등록된 댓글이 없습니다.
Member Rank