최근 코딩테스트를 준비하면서 아래와 같은 문제를 자주 느꼈다:
이 과정에서 AI 자동완성을 그대로 사용하는 것이 내 실력을 갉아먹고 있다는 문제의식을 갖게 되었고, 학습 방향을 다시 잡기로 했다.
| 문제점 | 설명 |
|---|---|
| 표면적인 이해 | AI가 제공하는 코드는 결과 중심이라 중간 사고 과정이 생략됨 |
| 학습 효과 저하 | 스스로 개념을 고민하지 않고 정답을 복사하게 됨 |
| 재사용 불가능 | 나중에 유사한 문제를 만나도 스스로 해결하지 못함 |
| 디버깅 취약 | 코드가 망가지면 어디서 문제인지 감을 못 잡음 |
효율적인 학습을 위해 AI 사용을 다음 범위로 제한한다:
| ✅ 허용 범위 | 설명 |
|---|---|
| 코드 리뷰 | 작성한 코드에 대한 개선점, 리팩토링, 시간복잡도 검토 요청 |
| 정보 확인 | 자료구조, 알고리즘, 라이브러리 등 개념적 정보 확인 |
| 문서 정리 | 기술 문서, 회의록, 문제 풀이 회고 등을 요약/정리 |
| ⛔️ 금지 영역 | 이유 |
|---|---|
| 코드 자동완성 | 개념 이해 없이 자동으로 코드를 작성하게 되어 학습이 되지 않음 |
| 전체 로직 구현 요청 | 문제 해결 능력이 떨어지고 의존성이 높아짐 |
| 템플릿 복사 요청 | 뼈대부터 스스로 고민하는 경험을 놓치게 됨 |
| ❌ 잘못된 사용 | ✅ 올바른 사용 |
|---|---|
| "Spring Security 로그인 예제 코드 줘" | "내가 만든 로그인 설정 리뷰해줘" |
| "이 문제 풀어줘" | "내가 작성한 풀이 로직을 리뷰해줘" |
| "오류 고쳐줘" | "이 오류 메시지의 의미와 원인을 알려줘" |
AI는 내 코드를 도와주는 리뷰어이지, 코드를 대신 짜주는 개발자는 아니다.