코딩 부트캠프 졸업하고 취업 공고 뒤지다가 멘붕 왔죠? 채용 공고마다 "경력 3년 이상", "실무 프로젝트 경험자 우대" 이런 문구만 눈에 띄니까요. 근데 신입은 어디서 경험을 쌓으란 말입니까. 회사는 경력자를 원하고, 경력은 회사에서만 쌓을 수 있는데 말이죠.
진짜 문제는 따로 있습니다. AI 코딩 도구가 대세라는데, 이걸 쓰면 코딩 실력이 안 늘 것 같아서 불안하다는 거죠. ChatGPT가 짜준 코드 복붙하다가 면접에서 "이 코드 설명 좀 해보세요" 하면 벙찔 것 같고요. 그런데 AI 안 쓰면 또 개발 속도가 느려서 포트폴리오도 제대로 못 만들겠고. 이 딜레마에서 벗어나는 방법, 지금부터 정확히 알려드립니다.
2026년 현재, 실리콘밸리부터 국내 스타트업까지 AI 코딩 도구 없이 개발하는 회사는 거의 없습니다. 구글, 메타, 마이크로소프트는 물론이고 당신이 지원하려는 그 스타트업도 이미 GitHub Copilot이나 Cursor를 쓰고 있습니다. 문제는 "AI를 쓰느냐 마느냐"가 아니라 "AI를 어떻게 쓰느냐"입니다.
단순히 "이 기능 짜줘" 하고 복붙하면 6개월 뒤 기술 부채만 쌓입니다. 반대로 AI를 24시간 불평 없이 코드 리뷰해주는 시니어 개발자로 활용하면, 사수 없이도 3년 차 퍼포먼스를 낼 수 있습니다. 이 글에서는 GitHub Copilot과 Cursor를 페어 프로그래밍 파트너로 만드는 구체적인 워크플로우, 실전 프롬프트 예시, 그리고 포트폴리오에 AI 활용 경험을 당당히 쓰는 전략까지 모두 정리했습니다.
장비빨도 실력입니다 제대로 골라야 삽질 안 합니다
Copilot과 Cursor, 둘 다 AI 코딩 도구지만 쓰임새가 완전히 다릅니다. 잘못 선택하면 돈만 날리고 생산성은 그대로입니다. 야구 선수가 방망이 고르듯이, 개발자도 자기한테 맞는 도구를 골라야 합니다.
GitHub Copilot은 반복 작업의 끝판왕입니다. IDE 안에서 실시간으로 코드를 자동완성해주는데, 특히 보일러플레이트 코드 작성할 때 미친 속도를 자랑합니다. API 호출 함수 10개 만들어야 하는데 구조가 거의 비슷하다? Copilot이 패턴 파악해서 나머지 9개는 탭 키만 누르면 끝입니다. Python, JavaScript, TypeScript 같은 메이저 언어에서는 정확도가 80% 이상 나옵니다.
실제로 SK플래닛에서 진행한 실험 결과를 보면, GitHub Copilot 사용자는 미사용자 대비 개발 속도가 평균 1.71배 빨랐습니다. 같은 난이도의 백엔드 API 개발 과제를 주었을 때, 사용자는 평균 3.04시간, 미사용자는 5.21시간이 걸렸죠. 특히 주니어와 시니어 간 개발 시간 편차가 줄어들었다는 점이 중요합니다. 코파일럿이 없을 때는 주니어가 시니어보다 2배 이상 시간이 걸렸는데, 코파일럿 사용 후에는 그 차이가 30%로 줄었습니다. 이게 바로 역량 보강 효과입니다.
반면 Cursor는 프로젝트 전체를 이해하는 똑똑한 파트너입니다. VS Code를 포크해서 만든 독립 에디터라서 처음부터 AI 네이티브로 설계됐죠. Composer 기능을 쓰면 여러 파일을 동시에 수정하면서 리팩토링까지 자동으로 처리합니다. 레거시 코드 분석하거나 복잡한 버그 잡을 때는 Cursor가 압도적입니다.
Cursor의 진짜 강점은 대화형 인터페이스입니다. "이 함수 리팩토링해줘"라고 자연어로 요청하면, 단순히 코드만 고치는 게 아니라 왜 이렇게 바꿨는지 설명까지 해줍니다. 한 개발자는 200개 테이블, 5천 개 컬럼에 주석 다는 작업을 Cursor로 2시간 만에 끝냈습니다. 원래 2일 걸리는 작업이었죠. 테이블 스키마 파일을 통째로 던지고 "각 컬럼에 적절한 주석 달아줘" 하니까 AI가 컬럼명을 추론해서 자동으로 ALTER SQL문까지 생성해줬습니다.
| 비교 항목 | GitHub Copilot | Cursor |
|---|---|---|
| 주요 강점 | 실시간 자동완성, 반복 작업 | 프로젝트 맥락 이해, 리팩토링 |
| 지원 AI 모델 | GPT-4o, Claude-3.5 | o1, GPT-4o, Claude-3.5, 커스텀 API |
| IDE 통합 방식 | VS Code, Visual Studio, JetBrains 등 확장 프로그램 | VS Code 기반 독립 실행형 에디터 |
| 가격 | 월 10달러, 학생 무료 | 월 20달러, 무료 플랜 제한적 |
| 학습 곡선 | 낮음, 설치 즉시 사용 | 중간, 프롬프트 학습 필요 |
| 보안 | 기업용 버전은 코드 학습 안 함 | 로컬 모드 지원, API 키 직접 관리 |
선택 가이드는 간단합니다. 속도가 최우선이고 GitHub 생태계를 쓴다면 Copilot, 코드 품질과 분석이 중요하다면 Cursor입니다. 돈 여유 있으면 둘 다 쓰는 게 정답입니다. Copilot으로 빠르게 초안 짜고 Cursor로 정밀 다듬는 조합이 실무에서 가장 효율적입니다.
학생이라면 GitHub Student Pack으로 Copilot 무료로 쓸 수 있으니 망설일 이유가 없습니다. 오픈소스 프로젝트 메인테이너도 무료 혜택 있습니다. Cursor는 무료 플랜이 있긴 한데 월 요청 횟수가 제한적이라서 진지하게 쓰려면 유료 전환이 필수입니다.
짜달라고 하지 말고 리뷰해달라고 요청하세요
AI한테 "로그인 기능 짜줘" 하는 순간 당신은 코드 복붙 기계가 됩니다. 3개월 후 면접 가서 "이 JWT 토큰 검증 로직 설명해보세요" 물어보면 대답 못 합니다. 실력 안 늘고 취업도 안 되는 최악의 시나리오죠.
진짜 고수들은 AI를 페어 프로그래밍 파트너로 씁니다. 코드 짜달라고 하는 게 아니라, 내가 짠 코드를 리뷰하고 개선하는 방향으로 활용하는 겁니다. 실리콘밸리 개발자들은 이미 이 방식으로 일하고 있습니다.
전략 1 테스트 주도 개발 파트너로 활용하기
TDD는 테스트 코드를 먼저 짜고 구현하는 방식인데, 주니어한테는 진입 장벽이 높습니다. "뭘 테스트해야 할지 모르겠어요"라는 말이 가장 많이 나오죠. 근데 AI를 쓰면 이야기가 달라집니다.
함수 스펙만 설명하고 "이 함수에 대한 엣지 케이스 테스트 코드 5개 작성해줘"라고 요청하면 됩니다. 예를 들어볼까요. 할인율 계산 함수를 만든다고 가정합시다.
// Cursor나 Copilot Chat에 입력할 프롬프트 예시
이 calculateDiscount 함수는 구매 금액과 회원 등급에 따라 할인율을 계산합니다.
비즈니스 로직:
- VIP 등급: 20% 할인
- 일반 등급: 10% 할인
- 10만원 이상 구매 시 추가 5% 할인
- 최대 할인율은 30%를 초과할 수 없음
이 함수에 대한 Jest 테스트 케이스를 작성해주세요.
다음 시나리오를 반드시 포함해야 합니다:
1. 경계값 테스트 (9만9천원, 10만원 정확히)
2. VIP 고객이 10만원 이상 구매 시 최대 할인율 적용 확인
3. 음수 금액 입력 시 에러 처리
4. 잘못된 등급 문자열 입력 시 예외 처리
5. null이나 undefined 입력 시 기본값 처리
이렇게 요청하면 AI가 5개의 테스트 케이스를 만들어줍니다. 여기서 중요한 건 AI가 짠 테스트 코드를 그냥 쓰는 게 아니라, 각 테스트가 왜 필요한지 이해하는 겁니다. "왜 경계값을 테스트해야 하죠?"라고 되물으세요. AI가 off-by-one 에러에 대해 설명해줄 겁니다. 이게 진짜 학습입니다.
테스트 코드를 먼저 작성하고 나면, 이제 그 테스트를 통과하는 함수를 구현하면 됩니다. 테스트가 실패하면 AI한테 "3번 테스트가 실패하는데, 음수 처리 로직을 추가해줘"라고 요청하면 됩니다. 이 과정을 반복하면 자연스럽게 버그 없는 코드가 완성됩니다.
SK플래닛 개발자 중 한 명은 Copilot Chat의 테스트 코드 생성 기능을 활용해서 Test Coverage를 100%까지 끌어올렸습니다. "JUnit 5와 assertJ 3을 사용해서 이 Service 클래스의 모든 메서드에 대한 테스트 코드를 작성하되, Test Coverage 100%를 달성해줘"라고 프롬프트를 던졌더니 AI가 놓칠 수 있는 예외 케이스까지 테스트 코드로 만들어줬다고 합니다.
전략 2 레거시 코드 분석 도구로 활용하기
남이 짠 코드나 오픈소스 라이브러리 분석할 때 AI 없으면 하루 종일 걸립니다. 특히 주석도 없고 변수명도 a, b, c로 되어 있는 코드 만나면 정말 절망적이죠. Cursor에 코드 전체를 던지고 이렇게 물어보세요.
이 UserService 클래스가 무슨 역할을 하는지 한글로 주석을 달아주고,
잠재적인 버그나 성능 문제가 있는 부분을 지적해주세요.
특히 다음 항목을 중점적으로 분석해주세요:
1. SQL Injection 취약점이 있는 부분
2. N+1 쿼리 문제가 발생할 가능성
3. 메모리 누수가 발생할 수 있는 부분
4. 동시성 문제 (Race Condition)
5. 에러 처리가 누락된 부분
각 문제점에 대해 구체적인 수정 방안도 함께 제시해주세요.
Cursor는 프로젝트 전체 맥락을 파악하기 때문에 단순히 함수 하나만 보는 게 아니라 다른 파일과의 관계까지 분석합니다. "이 함수는 OrderService에서 호출되는데, 거기서 트랜잭션 처리가 안 되어 있어서 데이터 정합성 문제가 생길 수 있습니다"라는 식으로 컨텍스트를 고려한 분석을 해줍니다.
실제로 한 개발자는 Python으로 작성된 이미지 판정 프로그램 코드를 Cursor Composer에 올리고 "코드를 리팩토링해줘"라고만 입력했습니다. 그랬더니 Cursor가 자동으로 코드를 프레임 생성 로직, 위젯 생성 로직, 파라미터 업데이트 로직, 판정 로직으로 분리해서 4개의 파일로 재구성해줬습니다. 객체지향 설계 원칙인 단일 책임 원칙을 AI가 알아서 적용한 거죠.
전략 3 변수명과 함수명 짓기 위임하기
개발자의 영원한 숙제가 네이밍입니다. getUserData인지 fetchUserInfo인지 retrieveUserProfile인지 고민하다가 30분 날립니다. 이것도 AI한테 맡기세요.
이 함수는 사용자 ID를 받아서 데이터베이스에서
프로필 정보와 최근 3개월간 주문 내역을 가져옵니다.
조건:
- 프로필 정보에는 이름, 이메일, 가입일이 포함됩니다
- 주문 내역은 날짜 역순으로 정렬됩니다
- 탈퇴한 사용자는 제외됩니다
적절한 함수명 5가지와 각 변수명을 제안해주세요.
클린 코드 원칙을 따르고, 팀 컨벤션은 camelCase입니다.
RESTful API 네이밍 가이드도 참고해주세요.
AI가 맥락에 맞는 네이밍을 여러 개 제안하면 그중에서 고르면 됩니다. 단순히 시간 절약만이 아닙니다. AI가 제안하는 다양한 네이밍 패턴을 보면서 "아, 이런 상황에서는 fetch보다 retrieve가 더 적절하구나" 같은 인사이트를 얻을 수 있습니다.
복붙만 하면 6개월 뒤 기술 부채가 됩니다
AI가 짠 코드 그대로 갖다 쓰면 단기적으로는 빠릅니다. 근데 에러 터지면 당신이 고쳐야 하는데 이해를 못 하니까 또 AI한테 물어봅니다. 이런 식으로 계속 가면 결국 코딩 문맹이 됩니다.
실제로 구글 엔지니어들이 AI 코딩 도구 사용 패턴을 분석했더니, 초보 개발자가 AI를 많이 쓸수록 오히려 실력이 퇴보한다는 결과가 나왔습니다. AI가 생성한 코드는 지속적인 감독과 수정이 필요한데, 주니어는 그걸 못 하니까 버그 폭탄만 양산하는 거죠. AI가 짠 코드의 약 40%는 보안 취약점이나 성능 문제를 포함하고 있다는 연구 결과도 있습니다.
해결책은 간단합니다. AI의 결과물을 무조건 의심하고 꼬리 질문하세요. "왜 이 라이브러리를 썼어?", "다른 방법은 없어?", "이 코드의 시간 복잡도는 얼마야?" 같은 질문을 던지는 겁니다.
| 질문 유형 | 프롬프트 예시 | 학습 효과 |
|---|---|---|
| 알고리즘 복잡도 | 이 정렬 함수의 시간 복잡도를 O(n²)에서 O(n log n)으로 줄일 방법을 3가지 제시하고 각 방법의 장단점을 비교해줘 | 알고리즘 최적화 감각, 트레이드오프 이해 |
| 라이브러리 선택 | Axios 대신 Fetch API를 쓰면 번들 크기는 얼마나 줄어들고, 브라우저 호환성은 어떻게 달라져? IE11 지원이 필요한 경우는? | 기술 선택 판단력, 실무 제약 조건 이해 |
| 보안 취약점 | 이 사용자 입력 처리 코드에서 XSS, SQL Injection, CSRF 취약점을 체크하고, 각 공격 시나리오를 구체적으로 설명해줘 | 보안 코딩 습관, 공격 벡터 이해 |
| 코드 가독성 | 이 3중 중첩 for문을 함수형 프로그래밍 방식으로 리팩토링하되, 성능 저하가 5% 이내가 되도록 해줘 | 클린 코드 작성 능력, 성능 프로파일링 |
| 에러 처리 | 이 async 함수에서 발생 가능한 모든 예외 상황을 나열하고, 각각에 대한 적절한 에러 핸들링 전략을 제시해줘 | 방어적 프로그래밍, 예외 처리 패턴 |
특히 Cursor는 대화형으로 설계되어서 이런 식의 연속 질문에 강합니다. "20번째 줄에서 에러가 났는데, 같이 살펴볼 수 있을까?"처럼 협업하듯이 물어보면 더 정확한 답변을 받습니다.
2년 동안 Copilot을 사용한 한 개발자는 이렇게 말합니다. "코파일럿이 잘하는 것과 못하는 것을 구분하는 게 중요합니다. 유틸 함수나 범용적인 코드는 거의 100% 정확하지만, 회사 내부 로직이나 특수한 라이브러리를 쓰는 코드는 엉터리를 제안할 때가 많습니다." 이 개발자는 AI가 제안한 코드를 항상 한 줄씩 읽어보고, 이해가 안 되는 부분은 반드시 물어본다고 합니다.
사수가 없는 주니어라면 AI를 사수로 만들어야 합니다. 단, 사수가 짜준 코드를 그냥 복사하지 않고 "왜 이렇게 짰어요?"라고 물어보듯이 AI한테도 똑같이 해야 합니다. 이게 페어 프로그래밍의 핵심입니다.
프롬프트 엔지니어링이 진짜 실력입니다
같은 AI 쓰는데 누구는 쓸모없는 코드 받고 누구는 바로 프로덕션에 투입 가능한 코드를 받습니다. 차이는 프롬프트 작성 능력입니다. 주니어가 "로그인 기능 짜줘" 하면 AI는 예제 수준 코드만 줍니다. 시니어가 요청하면 에러 핸들링, 보안 처리, 테스트 코드까지 딸려 나옵니다.
효과적인 프롬프트 구조는 Role-Goal-Context-Task 방식입니다. 먼저 AI의 역할을 정의하고, 목표를 명확히 하고, 현재 상황을 설명하고, 구체적인 작업을 지시하는 겁니다.
Role: 너는 10년 경력의 풀스택 시니어 개발자야.
특히 React와 Node.js 보안, 그리고 대규모 서비스 아키텍처 설계에 전문가야.
Goal: 월간 100만 명이 사용하는 서비스의 사용자 인증 시스템을
안전하고 확장 가능하게 구현할 거야.
Context:
- 현재 서비스는 AWS ECS에서 Docker 컨테이너로 운영 중
- Redis를 세션 스토어로 사용
- 프론트엔드는 React 18, 백엔드는 Node.js 20
- 기존 세션 기반 인증에서 토큰 기반으로 마이그레이션 중
Task:
- JWT 토큰 기반 인증 구현 (Access Token + Refresh Token)
- Refresh Token은 Redis에 저장하고 rotation 전략 적용
- CSRF, XSS 공격 방어 코드 추가
- 비밀번호는 bcrypt로 해싱 (salt rounds 12)
- TypeScript로 작성하고 엄격한 타입 안정성 보장
- Jest 단위 테스트 코드 포함 (coverage 80% 이상)
추가 요구사항:
- 각 함수마다 JSDoc 주석으로 파라미터와 리턴값 설명
- 보안상 주의할 점을 inline 주석으로 표시
- Rate limiting 로직도 함께 구현 (1분에 5회 제한)
이렇게 요청하면 AI가 맥락을 정확히 이해해서 프로덕션 수준의 코드를 생성합니다. 단순히 "로그인 만들어줘" 했을 때랑 퀄리티가 완전히 다릅니다.
디버깅할 때는 에러 메시지 전체를 포함하세요. 스크린샷 찍어서 보내는 것보다 텍스트로 복사해서 넣는 게 좋습니다.
다음 TypeScript 컴파일 에러를 분석하고 해결 방법을 제시하세요.
[에러 메시지 전체 복사]
error TS2345: Argument of type 'string | undefined' is not assignable
to parameter of type 'string'.
Type 'undefined' is not assignable to type 'string'.
[관련 코드]
function processUser(userId: string) {
console.log(userId.toUpperCase());
}
const user = users.find(u => u.id === targetId);
processUser(user?.id); // 여기서 에러 발생
질문:
1. 왜 이 에러가 발생했는지 TypeScript 타입 시스템 관점에서 설명해줘
2. 3가지 해결 방법을 제시하고, 각 방법의 장단점을 비교해줘
3. 실무에서 가장 권장되는 방법과 그 이유를 알려줘
4. 앞으로 이런 오류를 사전에 방지하는 코딩 습관을 제안해줘
AI는 에러 메시지 패턴을 학습했기 때문에 스택 오버플로우 뒤지는 것보다 빠르게 해결책을 줍니다. 다만, 여기서도 그냥 복붙하지 말고 왜 에러가 났는지 설명을 읽어야 합니다.
코드 리팩토링 요청할 때는 구체적인 개선 목표를 명시하세요.
아래 Python 함수는 1부터 n까지의 소수를 찾는 함수입니다.
현재 구현은 입력값이 100,000 이상일 때 5초 이상 걸립니다.
[기존 코드]
def find_primes(n):
primes = []
for num in range(2, n+1):
is_prime = True
for i in range(2, num):
if num % i == 0:
is_prime = False
break
if is_prime:
primes.append(num)
return primes
개선 요구사항:
1. 에라토스테네스의 체 알고리즘을 적용해서 시간 복잡도를 O(n²)에서 O(n log log n)로 개선
2. 실행 시간을 1초 이내로 단축
3. 메모리 사용량도 함께 최적화 (비트 배열 활용)
4. Before/After 성능 비교를 timeit 모듈로 측정하는 코드 포함
5. 알고리즘 동작 원리를 주석으로 상세히 설명
추가 질문:
- 왜 기존 코드가 느린지 시간 복잡도 분석도 해줘
- n이 1억 이상일 때는 어떤 추가 최적화가 필요한지도 알려줘
이렇게 하면 AI가 단순히 코드만 고치는 게 아니라 왜 빨라졌는지 알고리즘 설명까지 해줍니다. 이게 진짜 학습입니다.
포트폴리오에 AI 활용 경험 당당히 쓰세요
"AI 써서 만든 프로젝트 포트폴리오에 넣어도 되나요?" 이런 질문 진짜 많습니다. 대답은 "당연히 됩니다. 오히려 플러스 요인입니다"입니다.
2026년 현재 AI 코딩 도구를 안 쓰는 개발자가 오히려 구식입니다. 구글, 메타, 마이크로소프트 같은 빅테크 기업들은 이미 내부에서 AI 코딩 어시스턴트를 표준으로 쓰고 있습니다. GitHub은 개발자의 88%가 Copilot 사용 후 더 행복하게 일한다고 보고했고, 코드 작성 속도는 평균 55% 빨라졌다는 데이터를 공개했습니다.
면접관이 보고 싶은 건 "AI를 얼마나 잘 활용했는가"입니다. 포트폴리오에 이렇게 적으면 됩니다.
[프로젝트명: 실시간 협업 문서 편집기]
기술 스택: Next.js 14, Supabase Realtime, Yjs CRDT, Tailwind CSS
개발 기간: 3주
AI 도구 활용: GitHub Copilot, Cursor
주요 구현 사항:
- WebSocket 기반 실시간 동기화 (Copilot으로 보일러플레이트 빠르게 작성)
- CRDT 알고리즘 통합 (Cursor로 Yjs 라이브러리 분석 및 커스터마이징)
- 충돌 해결 로직 구현 (AI와 페어 프로그래밍으로 엣지 케이스 발견 및 해결)
- 6,500줄의 테스트 코드 작성 (TDD 방식, AI가 테스트 시나리오 제안)
성과:
- 개발 속도 45% 향상 (예상 5주 → 실제 3주)
- 버그 발생률 65% 감소 (AI 코드 리뷰로 사전 발견)
- 코드 리뷰 시간 절반으로 단축 (AI가 기본 품질 검증)
- 동시 접속자 1,000명 환경에서 안정적 동작 확인
배운 점:
AI가 생성한 CRDT 통합 코드를 검증하는 과정에서 분산 시스템의
일관성 문제와 벡터 클락 알고리즘을 깊이 이해하게 되었습니다.
특히 네트워크 파티션 상황에서의 데이터 동기화 전략을
AI와의 대화를 통해 다양한 관점에서 분석할 수 있었습니다.
GitHub: [링크]
Live Demo: [링크]
이렇게 쓰면 면접관은 "얘는 AI를 도구로 활용할 줄 아는 똑똑한 개발자구나"라고 생각합니다. 반대로 "처음부터 끝까지 혼자 손으로 다 짰어요" 하면 "왜 효율적인 도구를 안 쓰지?"라는 의문만 생깁니다.
실제로 한 주니어 개발자는 Cursor를 활용해서 Mini ERP 시스템을 2개월 만에 완성하고 취업에 성공했습니다. 사원 등록, 부서 이동, 연봉 관리, 권한 기반 접근 제어까지 Spring Boot와 MyBatis로 구현했는데, 면접관이 가장 높이 평가한 부분이 바로 "AI 도구를 전략적으로 활용한 부분"이었다고 합니다. "반복적인 CRUD 작업은 Copilot에 맡기고, 복잡한 권한 로직은 Cursor와 대화하면서 설계했습니다"라고 설명했더니 면접관이 고개를 끄덕이더랍니다.
회사 보안 정책 때문에 AI 도구 못 쓰게 한다고요? 그럼 로컬 모드나 엔터프라이즈 버전 도입을 건의하세요. GitHub Copilot Enterprise는 회사 코드베이스가 외부로 유출될 걱정 없이 쓸 수 있습니다. 코드 제안은 OpenAI 서버에서 실시간으로 생성되지만, 회사 코드는 AI 학습 데이터로 사용되지 않습니다. Cursor도 자체 API 키 설정 기능이 있어서 데이터 통제가 가능합니다.
실전 워크플로우 하루 루틴으로 만들기
이론은 충분히 봤으니 이제 실전입니다. 주니어 개발자가 AI 도구를 활용해서 하루를 어떻게 보내는지 구체적인 워크플로우를 보여드리겠습니다.
아침 9시, 출근해서 제일 먼저 하는 일은 어제 짠 코드 리뷰입니다. Cursor를 켜고 어제 작업한 파일을 엽니다. 그리고 Cmd+K를 눌러서 "이 파일의 코드를 리뷰하고, 개선이 필요한 부분 5가지를 우선순위별로 정리해줘. 보안, 성능, 가독성 관점에서 분석해줘"라고 요청합니다. AI가 지적한 부분을 하나씩 확인하면서 "왜 이게 문제야?"라고 되묻습니다. 이 과정이 15분.
10시부터는 새 기능 개발에 들어갑니다. 오늘 할 일은 사용자 프로필 이미지 업로드 기능입니다. 먼저 Copilot Chat에 이렇게 물어봅니다. "AWS S3에 이미지를 업로드하는 Node.js API를 만들 건데, 고려해야 할 보안 이슈와 예외 상황을 10가지 나열해줘." AI가 준 리스트를 보고 놓칠 뻔한 부분들을 메모합니다. 파일 크기 제한, MIME 타입 검증, 파일명 sanitization 등.
이제 코드를 짭니다. 함수 이름과 주석만 먼저 씁니다. "이 함수는 multipart form data에서 이미지를 추출하고, 5MB 이하인지 검증하고, S3에 업로드합니다." 탭 키를 누르면 Copilot이 나머지 코드를 제안합니다. 제안된 코드를 한 줄씩 읽으면서 이해가 안 되는 부분은 드래그하고 Copilot Chat에 "이 부분 설명해줘"라고 묻습니다.
함수를 다 짰으면 바로 테스트 코드를 씁니다. Cursor로 전환해서 "이 uploadImage 함수에 대한 Jest 테스트 코드를 작성해줘. 정상 케이스, 파일 크기 초과, 잘못된 MIME 타입, 네트워크 에러, S3 권한 에러를 모두 커버해야 해"라고 요청합니다. AI가 생성한 테스트를 돌려보고 실패하는 부분을 고칩니다. 이 과정을 오전 내내 반복합니다.
점심 먹고 오후 2시, 코드 리팩토링 시간입니다. 지난주에 짠 OrderService가 너무 길어서 읽기 힘듭니다. Cursor Composer를 켜고 OrderService.ts 파일을 열어둔 상태에서 "이 파일을 단일 책임 원칙에 따라 여러 개의 작은 클래스로 분리해줘. OrderValidator, OrderRepository, OrderNotifier로 나눠"라고 요청합니다. Cursor가 4개 파일을 만들어주면 하나씩 확인합니다.
오후 4시, 버그 리포트가 들어왔습니다. 결제 페이지에서 간헐적으로 에러가 난다는 겁니다. 에러 로그를 복사해서 Cursor에 붙여넣고 "이 에러의 원인을 분석하고, 재현 방법과 해결 방법을 제시해줘"라고 묻습니다. AI가 "Promise rejection을 제대로 처리하지 않아서 발생한 에러"라고 지적합니다. 해당 부분을 수정하고 테스트합니다.
퇴근 전 5시 30분, 오늘 짠 코드를 전부 Cursor에 던지고 "오늘 작성한 코드에서 내일 아침에 제일 먼저 고쳐야 할 부분 3가지를 알려줘"라고 묻습니다. AI가 지적한 내용을 노션에 정리하고 퇴근합니다.
이게 AI 도구를 활용하는 주니어 개발자의 하루입니다. 중요한 건 AI가 모든 걸 해주는 게 아니라, AI와 계속 대화하면서 코드를 이해하고 개선한다는 점입니다.
이제 시작하셔야 합니다
AI 때문에 개발자가 망한다는 이야기는 반은 맞고 반은 틀렸습니다. AI를 단순 복붙 도구로 쓰는 개발자는 망하고, AI를 학습 파트너로 쓰는 개발자는 성장합니다. 당신은 어느 쪽을 선택하시겠습니까.
GitHub Copilot은 월 10달러, 학생이면 무료입니다. Cursor는 월 20달러인데 무료 체험 기간이 있습니다. 커피 두 잔 값으로 24시간 코드 리뷰해주는 시니어 개발자를 고용하는 겁니다. 이걸 안 쓰는 게 오히려 이상합니다.
당장 오늘 Copilot이나 Cursor 하나 설치하고, 진행 중인 프로젝트에서 함수 하나만 AI와 페어 프로그래밍 해보세요. "이 함수 짜줘"가 아니라 "내가 짠 이 함수 리뷰해줘"라고 시작하는 겁니다. 3일만 이렇게 하면 AI 없이는 못 돌아갑니다.
사수 없이 성장하는 시대입니다. AI가 당신의 사수입니다. 두려워 말고 질문하고, 의심하고, 검증하고, 흡수하세요. 6개월 후 포트폴리오 들고 면접 갔을 때 "이 사람 경력 3년 차는 되겠네?"라는 소리 들을 겁니다. 그리고 그때 깨닫게 될 겁니다. 연차는 숫자가 아니라 학습 속도였다는 걸.
마지막으로 한 가지만 더. AI 도구 쓰는 게 부끄러운 일이 아닙니다. 계산기 쓴다고 수학 못하는 게 아니듯이, AI 쓴다고 코딩 못하는 게 아닙니다. 오히려 도구를 잘 다루는 게 진짜 실력입니다. 2026년 개발자 채용 시장에서 요구하는 건 "코드를 얼마나 많이 외우고 있는가"가 아니라 "문제를 얼마나 빠르고 정확하게 해결하는가"입니다.
자주 묻는 질문 정리
Q: 회사에서 보안 때문에 AI 코딩 도구 못 쓰게 하는데 어떡하죠?
GitHub Copilot Enterprise나 Cursor의 로컬 모드를 제안하세요. 둘 다 코드가 외부 서버로 유출되지 않도록 설정 가능합니다. Copilot Enterprise는 회사 코드를 학습 데이터로 사용하지 않으며, 모든 제안은 실시간으로만 생성되고 저장되지 않습니다. 아니면 개인 프로젝트에서라도 쓰면서 실력을 키우세요. 집에서 연습하는 건 누구도 막을 수 없으니까요.
Q: GitHub Copilot 가격이 부담되는데 무료로 못 쓰나요?
학생이라면 GitHub Student Pack으로 완전 무료입니다. 대학교 이메일만 있으면 됩니다. 오픈소스 프로젝트 메인테이너도 무료 혜택 받을 수 있습니다. 일반인은 월 10달러인데, 하루로 환산하면 333원입니다. 편의점 커피 한 잔 값도 안 됩니다.
Q: Cursor는 VS Code 확장 프로그램인가요?
아닙니다. VS Code를 포크해서 만든 독립 실행형 에디터입니다. VS Code 익스텐션 대부분을 그대로 쓸 수 있지만 별도로 다운로드해서 설치해야 합니다. 설정이나 단축키는 거의 비슷해서 VS Code 사용자라면 적응하는 데 하루면 충분합니다.
Q: AI가 짠 코드 저작권은 누구한테 있나요?
아직 법적 논쟁이 진행 중이지만, 일반적으로 코드를 요청한 사용자에게 귀속됩니다. GitHub는 Copilot이 생성한 코드에 대해 사용자가 완전한 권리를 가진다고 명시하고 있습니다. 다만 상업적으로 사용할 때는 AI가 학습한 오픈소스 라이선스를 확인하는 게 안전합니다. Copilot의 경우 코드 제안 시 해당 코드가 공개 저장소에 존재하는지 알려주는 기능이 있습니다.
Q: 주니어인데 포트폴리오에 AI 도구 사용 적어도 마이너스 안 되나요?
오히려 플러스입니다. 2026년 현재 AI 활용 능력은 필수 역량이 되었습니다. 네이버, 카카오, 쿠팡 같은 국내 대기업도 채용 공고에 "AI 도구 활용 경험 우대"를 명시하기 시작했습니다. 단, "AI가 다 짰다"가 아니라 "AI를 활용해 생산성을 높이고 코드 품질을 개선했다"로 표현하세요. 구체적인 수치를 넣으면 더 좋습니다. "개발 속도 40% 향상", "버그 발생률 60% 감소" 같은 식으로요.
Q: Copilot과 Cursor 중 뭘 먼저 배워야 하나요?
Copilot부터 시작하세요. 학습 곡선이 낮아서 설치하자마자 바로 쓸 수 있습니다. 2주 정도 익숙해지면 Cursor를 추가하세요. Cursor는 프롬프트 작성 능력이 필요해서 초반에는 어려울 수 있습니다. Copilot으로 AI와 대화하는 감을 익힌 다음 Cursor로 넘어가는 게 효율적입니다.
공식 참고 링크 안내
GitHub Copilot 공식 사이트
Cursor 에디터 공식 다운로드
Visual Studio Code 공식 사이트

0 댓글