AI가 짠 코드, 그대로 써도 될까? 초보자를 위한 검증 체크리스트 10가지
ChatGPT, Claude 같은 AI가 만든 코드를 실제 서비스에 쓰기 전에 꼭 확인해야 할 10가지를 개발 초보자도 이해할 수 있게 정리했습니다. 실행 확인부터 보안, 라이브러리 버전 문제까지 다룹니다.
AI 덕분에 개발을 전공하지 않은 분들도 직접 프로그램을 만들 수 있는 시대가 되었습니다. 정말 좋은 변화입니다. 그런데 한 가지 꼭 기억해야 할 사실이 있습니다.
AI는 "그럴듯한" 코드를 만드는 데 아주 능숙합니다. 하지만 그럴듯한 것과 올바른 것은 다릅니다.
이 글에서는 AI가 만든 코드를 실제로 쓰기 전에 확인해야 할 10가지를, 개발을 잘 모르는 분도 따라 할 수 있도록 정리했습니다.
1. 실제로 실행해 보셨나요?
가장 기본이지만 가장 자주 건너뛰는 단계입니다. AI가 "이렇게 하면 됩니다"라고 했다고 해서 실제로 되는 것은 아닙니다.
- 코드를 직접 실행해서 원하는 결과가 나오는지 눈으로 확인하세요.
- 웹사이트라면 실제 브라우저로 열어 버튼을 하나하나 눌러 보세요.
- 휴대폰 화면에서도 확인하세요. 컴퓨터에서는 멀쩡한데 휴대폰에서 깨지는 경우가 많습니다.
2. 일부러 틀리게 입력해 보셨나요?
AI 코드는 대부분 모든 것이 정상일 때를 기준으로 작성됩니다. 문제는 실제 사용자는 예상하지 못한 행동을 한다는 점입니다.
- 빈칸으로 제출하기
- 이메일 칸에 엉뚱한 글자 넣기
- 아주 긴 글 붙여 넣기
- 버튼을 여러 번 빠르게 누르기
실제로 저희 홈페이지를 만들 때, 전화번호를 잘못 입력하면 양식에 쓴 내용이 전부 사라지는 버그를 이 방법으로 찾았습니다. 정상적으로만 써 봤다면 절대 몰랐을 문제였습니다.
3. 비밀번호나 API 키가 코드에 들어 있지 않나요?
AI에게 "메일 보내는 기능을 만들어 줘"라고 하면, 예시 코드에 API 키를 직접 적어 넣는 경우가 있습니다. 이 코드를 그대로 GitHub 같은 곳에 올리면 누구나 그 키를 볼 수 있습니다.
- API 키, 비밀번호는 코드가 아니라 환경 변수(
.env파일, 호스팅의 환경 변수 설정)에 넣으세요. .env파일이.gitignore에 들어 있는지 확인하세요.- 키를 실수로 공개했다면, 지우는 것으로 끝내지 말고 즉시 새 키로 교체하세요.
4. 사용자가 보낸 값을 그대로 믿고 있지 않나요?
웹사이트의 입력란은 누구나 무엇이든 보낼 수 있는 통로입니다. 화면에서 입력을 막아 두어도, 마음먹은 사람은 우회해서 보낼 수 있습니다.
- 서버에서 다시 한번 입력값을 검사하는지 확인하세요. (이메일 형식, 글자 수 제한 등)
- 입력값을 데이터베이스 조회문에 그대로 붙여 쓰는 코드는 위험합니다. AI에게 "SQL 인젝션에 안전한지 확인해 줘"라고 물어보세요.
5. 존재하지 않는 라이브러리를 쓰고 있지 않나요?
AI는 가끔 세상에 없는 함수나 패키지 이름을 지어냅니다. 이름이 그럴듯해서 속기 쉽습니다.
- 설치 명령이 실패하거나 "찾을 수 없다"는 오류가 나면, AI에게 다시 묻기 전에 공식 문서나 패키지 저장소(npm, PyPI 등)에서 직접 검색해 보세요.
- 비슷한 이름의 수상한 패키지를 설치하지 않도록 주의하세요. 악성 패키지가 흔히 쓰는 수법입니다.
6. AI가 아는 버전이 최신인가요?
AI는 학습한 시점까지의 정보만 알고 있습니다. 그 사이에 라이브러리가 크게 바뀌었다면, AI는 이제는 동작하지 않는 옛날 방식으로 코드를 짤 수 있습니다.
- 설치된 라이브러리의 버전을 확인하고, AI에게 "이 버전 기준으로 작성해 줘"라고 알려 주세요.
- 중요한 기능은 해당 버전의 공식 문서와 대조해 보세요.
저희도 최신 버전의 웹 프레임워크를 쓰면서 이전과 달라진 규칙이 꽤 있어, 공식 문서를 먼저 확인하고 코드를 작성했습니다.
7. 오류 메시지를 끝까지 읽어 보셨나요?
화면은 멀쩡해 보여도, 뒤에서는 오류가 나고 있을 수 있습니다.
- 웹사이트라면 브라우저의 개발자 도구(F12) → 콘솔 탭에 빨간 오류가 없는지 확인하세요.
- 오류가 있다면 그 메시지를 통째로 복사해서 AI에게 보여 주세요. "안 돼요"보다 훨씬 정확한 답을 받을 수 있습니다.
8. 코드가 무엇을 하는지 설명할 수 있나요?
모든 줄을 이해할 필요는 없습니다. 하지만 "이 부분은 이런 일을 한다" 정도는 말할 수 있어야 나중에 문제가 생겼을 때 고칠 수 있습니다.
AI에게 이렇게 물어보세요.
- "이 코드를 초보자에게 설명하듯 한 줄씩 풀어 줘."
- "이 코드에서 문제가 생길 수 있는 부분은 어디야?"
- "이 코드를 다른 방법으로 짜면 어떻게 달라져?"
9. 개인정보를 다루고 있다면 법적 의무를 확인했나요?
이름, 전화번호, 이메일을 받는 문의 양식 하나만 있어도 개인정보 처리방침을 공개해야 하는 등의 법적 의무가 생길 수 있습니다. AI는 코드를 만들어 주지만, 법적 의무까지 챙겨 주지는 않습니다.
- 어떤 정보를, 왜, 얼마나 오래 보관하는지 정리하세요.
- 꼭 필요한 정보만 받으세요. 받지 않은 정보는 유출될 일도 없습니다.
10. 되돌릴 수 있게 저장해 두었나요?
AI와 작업하다 보면 "고쳐 줘"를 반복하다가 오히려 더 망가지는 경우가 있습니다.
- Git 같은 버전 관리 도구로 잘 동작하는 시점마다 저장(커밋) 해 두세요.
- 문제가 생기면 그 시점으로 바로 돌아갈 수 있습니다. 이것 하나만으로도 AI와의 작업이 훨씬 안전해집니다.
요약: 한눈에 보는 체크리스트
- 직접 실행하고, 휴대폰에서도 확인했다
- 일부러 틀린 값을 넣어 봤다
- 비밀번호·API 키가 코드에 없다
- 서버에서 입력값을 다시 검사한다
- 사용하는 라이브러리가 실제로 존재한다
- 라이브러리 버전에 맞는 방식인지 공식 문서와 대조했다
- 콘솔에 오류가 없다
- 코드가 하는 일을 설명할 수 있다
- 개인정보 관련 의무를 확인했다
- 잘 동작하는 시점을 저장해 두었다
AI는 훌륭한 조수입니다. 하지만 결과물에 책임지는 것은 결국 사람입니다. 이 체크리스트가 AI와 함께 더 안전하게 만드는 데 도움이 되기를 바랍니다.
혼자 검증하기 어려운 프로젝트라면 Springuptech에 문의해 주세요. AI로 빠르게 만들고, 실무 경험으로 꼼꼼하게 검증해 드립니다.
노재용
Springuptech 대표 개발자 · 22년 차 소프트웨어 엔지니어