개발자가 AI 도구를
실무에서 쓰는 현실
ChatGPT, Claude, Copilot — 1년 넘게 매일 쓰면서 알게 된 것들
1년 넘게 매일 쓰면서 달라진 것
ChatGPT가 처음 나왔을 때 나는 솔직히 회의적이었다. 써봤더니 코드를 그럴듯하게 생성하는데 실제로 돌아가지 않는 코드가 많았고, 틀린 정보를 자신 있게 말하는 게 불안했다. "검색이 더 빠르다"고 생각했다. 그때가 2023년 초였다.
지금은 거의 모든 작업에서 AI 도구를 쓴다. ChatGPT, Claude, GitHub Copilot, 상황에 따라 골라서. 하루에 AI 없이 작업하는 시간이 얼마나 되는지 모르겠을 정도다. 그렇다고 AI가 내 코드를 다 짜준다는 뜻이 아니다. 쓰는 방식이 완전히 달라졌다는 뜻이다.
이 글은 AI 도구 예찬도 아니고 경계론도 아니다. 1년 넘게 매일 쓰면서 실제로 어떤 상황에서 도움이 됐고, 어떤 상황에서 독이 됐는지 — 그 현실을 쓴다.

Next.js, TypeScript, React 기반 프론트엔드 개발자 관점이다. 사용한 도구는 ChatGPT (GPT-4o), Claude Sonnet, GitHub Copilot 세 가지가 주력이고 상황에 따라 교차해서 쓴다. 2026년 6월 기준 현재 경험이다.
도구별로 어디에 쓰는지 — 나의 실제 분배
긴 맥락이 필요한 문제. "왜 이렇게 동작하지?"라는 질문. 에러 메시지 분석. 아키텍처 고민을 같이 할 때.
PR description 초안, 기술 문서, 주석 작성. 긴 코드 블록을 읽고 개선점을 찾을 때. 문체가 자연스럽다.
타이핑하면서 자동 완성. 비슷한 패턴의 함수를 빠르게 만들 때. 테스트 케이스 보일러플레이트.
외우기 귀찮은 것들. 정규식은 이제 직접 안 짠다. Flexbox/Grid 트릭. 간단한 쿼리 초안.
실제로 도움이 됐던 사례들
전화번호 포맷 검증 정규식이 필요했다. 한국 번호 형식이 여러 가지라 엣지 케이스 처리가 까다로웠다. 예전엔 30분 투자해서 직접 짜거나 Stack Overflow에서 복사해서 수정했다.
이제는 AI한테 조건을 설명하고 10초 만에 초안을 받는다. 그 다음 직접 테스트해서 빠진 케이스를 피드백하면 수정해준다. 전체 과정이 5분이다. 정규식은 AI가 가장 확실하게 시간을 아껴주는 영역 중 하나다.
const PHONE_REGEX = /^01[016789]-?\d{3,4}-?\d{4}$/;function isValidKoreanPhone(phone: string): boolean { const cleaned = phone.replace(/\s/g, ''); return PHONE_REGEX.test(cleaned);}011/016/017/018/019도 포함했고, 하이픈 유무 모두 허용합니다. 공백 제거 후 검증하므로 "010 1234 5678" 형식도 처리됩니다.
Next.js App Router에서 hydration mismatch 에러가 반복해서 터졌다. 에러 메시지 자체는 알겠는데 왜 이 컴포넌트에서 나오는지 이해가 안 됐다. 예전엔 GitHub Issues를 한참 뒤져야 했다.
에러 메시지 전체와 컴포넌트 코드를 붙여넣고 "왜 이런 에러가 나는지, 어떻게 고칠 수 있는지"를 물었다. 10분 만에 서버/클라이언트 렌더링 불일치 원인과 세 가지 해결 방법을 받았다. 물론 그 중 내 케이스에 맞는 건 직접 판단해야 했다.
코드는 다 짰는데 PR description 쓰는 게 귀찮은 순간이 있다. 특히 "어떤 걸 왜 바꿨는지"를 잘 정리해서 써야 하는 큰 PR일수록.
변경 내용 요약과 커밋 메시지들을 Claude에게 주고 "이걸 기반으로 PR description 초안 작성해줘, What, Why, How 구조로"라고 하면 90%는 쓸 만한 초안이 나온다. 나는 사실 관계 확인하고 빠진 맥락 보완하면 된다. 이 작업이 20분에서 5분으로 줄었다.
AI가 거짓말한 사례들 — 더 중요한 이야기
AI 도구가 유용하다는 건 1년 쓰면서 검증됐다. 그런데 더 중요하게 배운 건 AI가 틀리는 패턴이다. 이걸 모르면 AI를 쓸수록 오히려 더 위험하다.
Next.js 14 App Router에서 메타데이터 설정하는 법을 물어봤다. AI가 자신 있게 Head 컴포넌트 기반으로 답을 줬다. Pages Router 방식이었다. App Router에서는 export const metadata를 써야 하는데.
틀린 코드를 그대로 붙여넣었고, 한참 헤맸다. 나중에 공식 문서 보고서야 원인을 알았다. AI의 학습 데이터 기준이 오래됐거나, 버전 혼동이 있었던 것이다. 빠르게 바뀌는 프레임워크 API는 AI보다 공식 문서가 항상 맞다.
next/head의 Head를 import해서 사용하세요:import Head from 'next/head'export default function Page() {"{"} return {"<>..."}이 방식으로 각 페이지의 타이틀을 설정할 수 있습니다.
특정 기능을 위한 npm 패키지를 추천받았다. 패키지 이름도 구체적으로 줬고, 사용법 예시까지 있었다. npm install 했더니 해당 패키지가 없었다. AI가 패키지를 만들어낸 것이다 — 이걸 "hallucination(환각)"이라고 부른다.
그 이후로 AI가 추천하는 패키지는 반드시 npmjs.com에서 실제로 존재하는지, 다운로드 수가 얼마인지, 마지막 업데이트가 언제인지 확인하는 게 루틴이 됐다. 자신 있게 말해도 없는 것일 수 있다.
할인 계산 로직이 복잡했다. 복수 쿠폰 적용, 회원 등급별 추가 할인, 최소 주문 금액 조건이 복합으로 얽혀 있었다. AI한테 조건들을 설명하고 코드를 받았다. 로직이 그럴듯해 보였다. 간단하게 테스트했을 때 맞는 것 같아서 그냥 배포했다.
2일 뒤 QA에서 특정 케이스에서 할인이 음수가 나오는 버그가 발견됐다. AI가 엣지 케이스를 빠뜨렸고, 나는 충분히 검증하지 않았다. 비즈니스 로직은 AI가 초안을 줘도 내가 모든 케이스를 직접 테스트해야 한다는 걸 비싸게 배웠다.
AI가 자신 있게 말한다고 맞는 게 아니다. AI는 틀릴 때도 같은 톤으로 말한다. 검증하지 않고 쓰면 AI 없이 일하는 것보다 더 위험할 수 있다.
AI 전후 — 실무가 달라진 것들
정규식 짜는 데 30분. Stack Overflow 탐색, 수정, 테스트.
에러 메시지를 구글에 통째로 검색하고 결과 스캔.
PR description은 대충 쓰거나 오래 잡고 있음.
낯선 라이브러리 사용법 파악에 공식 문서 1시간.
보일러플레이트 코드 직접 타이핑 또는 기존 것 복사.
정규식 초안 받고 직접 테스트 케이스 확인. 총 5분.
에러 + 코드 맥락을 함께 질문. 원인 분석 10분.
PR description 초안 5분, 사실 확인 후 완성.
라이브러리 기본 사용법 AI 질문 후 공식 문서로 검증.
Copilot이 패턴 파악해서 자동 완성. 수정만 함.
AI를 쓰면서 생긴 습관들 — 좋은 것과 나쁜 것
AI한테 질문할 때 맥락 없이 물으면 쓸모없는 답이 온다는 걸 일찍 깨달았다. "이 코드 왜 안 돼?"는 쓸모 없고, "Next.js 14 App Router에서 useEffect 안에서 router.push를 호출할 때 이 에러가 나는데, 이 컴포넌트는 클라이언트 컴포넌트고 이 조건에서만 발생한다" — 이렇게 써야 한다.
이게 팀 커뮤니케이션에도 영향을 줬다. 슬랙에서 동료한테 질문할 때도 예전보다 맥락을 더 잘 정리해서 물어보게 됐다. AI와 대화하는 훈련이 사람과의 기술 커뮤니케이션 능력을 올려줬다는 게 의외의 부작용이었다.
예전엔 막히면 5~10분은 스스로 생각하고 검색해봤다. 지금은 2분만 막혀도 AI 창을 여는 습관이 생겼다. 그게 속도를 올려주기도 하지만, 동시에 혼자 문제를 파고드는 시간이 줄어들었다는 걸 안다.
면접에서 코드 문제 풀 때 AI 없이 하는 게 예전보다 느려진 느낌이 가끔 든다. 혼자 사고하는 근육이 약해진 것 같다. 의도적으로 AI 없이 문제를 풀어보는 시간을 따로 만드는 게 필요하다고 느꼈다.
좋은 프롬프트와 나쁜 프롬프트
AI 도구에서 80%의 결과 품질은 질문의 질에서 결정된다. 같은 AI도 어떻게 물어보느냐에 따라 완전히 다른 답이 나온다.
createStore와 Context를 조합하는 패턴을 씁니다. 각 요청마다 스토어 인스턴스가 격리되어야 합니다...[구체적이고 즉시 쓸 수 있는 코드 패턴이 이어짐]
"AI가 개발자를 대체할까"에 대한 현직자 솔직한 생각
이 질문을 많이 받는다. 1년 넘게 매일 AI와 일한 사람으로서 솔직하게 말하면 — 단순 작업은 이미 AI가 잘 한다. 내가 하루에 하는 작업 중 30~40%는 AI가 초안을 내거나 대부분을 처리한다.
그런데 그 작업들의 공통점이 있다. 패턴이 있고, 맥락이 제한적이고, 정답이 명확한 것들이다. 정규식, 보일러플레이트, 간단한 유틸 함수, 문서 초안 — 이런 것들.
반면 AI가 못 하는 것들도 분명하다. 이 팀의 기술 부채 맥락을 이해하고 어떤 아키텍처 결정을 내릴지, 이 비즈니스 로직의 엣지 케이스가 실제로 사용자에게 어떤 영향을 주는지, 코드 리뷰에서 "이 방식은 3개월 뒤에 유지보수하기 어려울 것 같다"는 판단 — 이런 것들은 아직 AI가 대체하지 못했다.
AI는 개발자를 대체하지 않는다 — 지금은. 하지만 AI를 잘 쓰는 개발자가 못 쓰는 개발자를 대체할 가능성은 있다. 도구를 쓰지 않는 게 장점이 되는 시대는 지났다. 쓰되 검증하고, 맥락을 이해하고, 결과에 책임지는 것이 개발자의 역할로 이동하고 있다.
실제로 내가 쓰는 AI 활용 원칙
1년 동안 시행착오를 거쳐서 정착한 원칙들이다.
AI 답변은 초안이다. 받은 코드를 그냥 붙여넣지 않는다. 읽고, 이해하고, 필요하면 수정한다. 이해 안 되는 코드는 배포하지 않는다.
버전 민감한 것은 공식 문서로 확인한다. 특히 Next.js, React 같이 빠르게 바뀌는 것들. AI 학습 데이터는 오래될 수 있다.
패키지 추천은 npmjs.com에서 직접 확인한다. 다운로드 수, 마지막 업데이트, GitHub Stars를 본다. AI가 만들어낸 패키지일 수 있다.
비즈니스 로직은 내가 모든 케이스를 직접 테스트한다. AI가 논리적으로 보이는 코드를 줘도 엣지 케이스를 빠뜨릴 수 있다.
AI 없이 푸는 연습을 주 1회 한다. 혼자 사고하는 근육이 약해지지 않도록. 알고리즘 문제 하나를 AI 없이 푸는 것을 루틴으로 만들었다.
AI 도구는 지금 개발 환경에서 선택이 아니라 기본이 되고 있다. 쓸지 말지의 문제가 아니라 어떻게 잘 쓸지의 문제다. 그리고 잘 쓴다는 건 AI를 믿는 게 아니라 AI와 협력하면서 내가 검증하고 판단하는 주체가 되는 것이다.
AI가 틀렸을 때 결과에 책임지는 건 나다. 그 책임감이 있는 한, AI는 두렵지 않고 그냥 유용한 도구다.
💬 AI 도구 어떻게 쓰고 계세요?
ChatGPT, Claude, Copilot 중 어떤 걸 주로 쓰시는지, 어떤 작업에 가장 도움이 됐는지 — 또는 AI를 쓰다가 낭패를 봤던 경험이 있다면 댓글로 나눠주세요. 실제 현장 경험이 가장 좋은 정보가 됩니다.
'개발자 > 기술스택 도구' 카테고리의 다른 글
| 모노레포 도입 후 실제 팀에 생긴 변화 (0) | 2026.07.17 |
|---|---|
| 상태 관리 라이브러리 바꾸면서 겪은 마이그레이션 고통 (0) | 2026.07.10 |
| Figma와 협업하면서 생긴 프론트엔드 개발자의 고충 (0) | 2026.07.03 |
| 내가 지금 쓰는 개발 도구 세팅 공개 - VSCode, 터미널, 맥 환경 (1) | 2026.06.26 |
| TypeScript 도입, 현실은 달랐다 (1) | 2026.06.19 |