어제 지인과 AI 개발에 관해 이야기를 나눴습니다. 그분은 예전부터 AI를 사용해 온 개발자일수록 오히려 AI를 완전히 신뢰하지 못하는 경우가 있다고 말했습니다. AI가 작성하는 코드 한 줄 한 줄을 사람이 모두 확인하고 통제하려 하다 보니, 정작 AI가 줄여줄 수 있는 개발 시간을 제대로 활용하지 못한다는 이야기였습니다.
어느 정도 맞는 말이라고 생각합니다. AI를 개발 도구로 쓰면서도 사람이 기존 방식과 똑같이 모든 구현 과정을 직접 관리한다면, 속도 면에서 얻는 이점이 크지 않습니다. 특히 화면 구성, 반복되는 입력·조회 기능, 기본적인 연동 코드처럼 규칙이 비교적 분명한 작업은 AI에게 상당 부분 맡길 수 있습니다.
다만 고객에게 납품하는 웹시스템이라면 이야기가 조금 달라집니다. AI가 코드를 만들었다는 사실이 개발사의 책임까지 대신해 주지는 않기 때문입니다.
AI가 만든 코드도 결국 개발사가 책임져야 합니다
개인적으로 쓰는 간단한 자동화 프로그램이라면 문제가 생겼을 때 다시 만들거나 사용을 멈추면 그만일 수 있습니다. 하지만 회사가 사용하는 회원관리, 주문 처리, 예약, 사내 업무 시스템은 다릅니다. 여러 사람이 함께 사용하고, 이미 쌓인 데이터도 있습니다.
운영 중 오류가 발생했을 때 고객은 “이 코드를 사람이 썼는지 AI가 썼는지”를 묻지 않습니다. 왜 문제가 생겼는지, 어떤 데이터가 영향을 받았는지, 어떻게 복구할 것인지를 개발사에 요청합니다. 기능을 추가하거나 정책을 바꿀 때도 마찬가지입니다.
그래서 AI에게 개발을 맡길 수는 있어도, 개발사는 완성된 시스템의 구조를 이해하고 있어야 합니다. 어느 기능이 어느 데이터와 연결되는지, 중요한 처리가 어디에서 이뤄지는지, 수정할 때 다른 기능에 어떤 영향이 갈 수 있는지를 파악하지 못하면 유지보수는 어려워집니다.
코드 한 줄보다 전체 구조를 보는 일이 중요해집니다
AI 개발 환경에서는 사람이 모든 코드를 처음부터 직접 작성하는 시간은 줄어들 수 있습니다. 대신 요구사항을 정리하고, 기능의 경계를 나누고, 데이터베이스 구조를 설계하고, 결과물을 검증하는 일이 더 중요해집니다.
데이터베이스는 쉽게 말해 시스템이 기억해야 할 정보를 정리해 두는 설계도입니다. 고객 정보와 주문 정보, 권한 정보가 어떤 방식으로 연결되는지 잘못 잡히면 화면이 정상적으로 보여도 나중에 수정 비용이 커질 수 있습니다. AI가 빠르게 기능을 만들어도 이 구조가 불명확하면 시스템 전체가 불안정해집니다.
예를 들어 AI에게 “회원 등급 기능을 추가해 달라”고 요청하는 것만으로는 충분하지 않습니다. 등급 변경 권한은 누구에게 줄지, 기존 회원 데이터는 어떻게 처리할지, 할인이나 예약 권한 같은 기존 기능과 어떤 관계가 있는지를 사람이 결정해야 합니다. 이 판단이 빠진 상태에서 만든 코드는 당장은 동작해도 운영 단계에서 문제가 생기기 쉽습니다.
AI를 통제하기보다 시스템을 통제해야 합니다
앞으로의 개발 방식은 AI가 코드를 얼마나 많이 작성했는지로 평가하기보다, AI가 빠르게 작업하도록 맡기면서도 사람이 시스템을 이해하고 검증할 수 있는가에 달려 있다고 봅니다.
여기서 검증은 모든 코드 줄을 의심하는 일이 아닙니다. 요구한 기능이 실제 업무 흐름대로 작동하는지, 권한이 없는 사용자가 중요한 정보를 볼 수 없는지, 기존 데이터가 깨지지 않는지, 변경 요청이 들어왔을 때 어디를 고쳐야 하는지가 분명한지를 확인하는 일에 가깝습니다.
개발 과정에서도 역할을 나눌 필요가 있습니다. AI는 구현 속도를 높이는 도구로 활용하고, 사람은 요구사항과 설계 기준을 세우며 결과를 점검합니다. AI가 낸 답을 그대로 붙여 넣는 방식은 빠르게 시작할 수 있지만, 납품 후 운영까지 생각하면 좋은 프로세스라고 보기 어렵습니다.
고객사가 확인할 기준도 달라집니다
외주 개발을 맡기는 기업이라면 “AI로 개발하니 저렴하고 빠르다”는 말만 듣고 판단하지 않는 편이 좋습니다. 실제로 확인할 것은 개발사가 시스템 구조와 데이터를 어떻게 관리하는지, 문서나 설명을 남기는지, 기능 변경과 장애 상황에 대응할 체계를 갖췄는지입니다.
AI를 활용하면 개발 기간과 반복 작업은 분명히 줄일 여지가 있습니다. 그렇다고 설계, 검증, 운영 유지보수까지 자동으로 해결되는 것은 아닙니다. 오히려 AI가 빨라진 만큼, 처음에 업무 기준과 책임 범위를 명확히 잡지 않으면 더 빠르게 잘못된 방향으로 갈 수도 있습니다.
AI 시대의 좋은 개발사는 AI를 세세하게 붙잡고 있는 곳이 아니라, AI에게 맡길 일은 맡기되 시스템 전체를 설명하고 책임질 수 있는 곳이라고 생각합니다. 코드를 누가 썼는지보다 중요한 것은, 문제가 생겼을 때 그 시스템을 누가 이해하고 고칠 수 있느냐입니다.