기술 부채(Technical Debt)
AI 덕분에 기능 하나 만드는 시간은 정말 짧아졌습니다.
예전에는 하루 걸리던 기능을 이제는 몇 분 만에 만들기도 합니다.
그런데 속도가 빨라진 만큼 함께 빨라진 것이 하나 있습니다.
바로 기술 부채(Technical Debt) 입니다.
AI는 기능은 빠르게 만들어주지만, 프로젝트를 건강하게 유지해주지는 않습니다.
기술 부채란?
기술 부채는 쉽게 말하면
"지금 편하려고 미래의 나에게 빚을 지는 것."
입니다.
처음에는 개발 속도가 빨라집니다.
하지만 시간이 지날수록
- 수정이 어려워지고
- 버그가 늘어나고
- 새로운 기능 추가가 힘들어집니다.
결국 언젠가는 그 빚을 갚아야 합니다.
바이브코딩이 기술 부채를 쌓는 이유
AI는 사용자가 시킨 기능을 만드는 것이 목적입니다.
프로젝트 전체 구조까지 항상 고려하지는 않습니다.
그래서 기능을 계속 추가하면
조금씩 기술 부채가 쌓입니다.
1. 중복 코드가 계속 생긴다.
로그인
회원가입
비밀번호 변경
프로필 수정
AI에게 각각 만들어 달라고 하면
비슷한 함수가 여러 개 생기는 경우가 많습니다.
처음에는 편하지만
나중에는 같은 버그를 여러 군데 수정해야 합니다.
2. 필요 없는 코드가 계속 남는다.
AI는 미리 만들어 두는 것을 좋아합니다.
사용하지 않는
- 함수
- 컴포넌트
- API
- 유틸
들이 계속 프로젝트 안에 남습니다.
몇 달 지나면
"이거 삭제해도 되나?"
가 시작됩니다.
3. 라이브러리가 계속 늘어난다.
간단한 기능 하나에도
새로운 npm 패키지를 설치하는 경우가 많습니다.
어느 순간
dependencies
가 엄청나게 많아집니다.
하지만 실제 사용하는 것은 절반도 안 되는 경우가 많습니다.
4. 파일 구조가 점점 복잡해진다.
AI에게
이것도 추가
저것도 추가
를 반복하다 보면
비슷한 컴포넌트가 여기저기 생깁니다.
프로젝트가 커질수록
찾기도 어렵고 수정도 어려워집니다.
5. 코드를 이해하지 못한 채 넘어간다.
동작은 합니다.
하지만
왜 이렇게 구현했는지는 모릅니다.
그러면 다음 기능을 추가할 때
AI도 기존 코드를 제대로 이해하지 못한 채
새로운 코드를 덧붙입니다.
기술 부채는 더 빨리 쌓입니다.
기술 부채를 줄이는 방법
1. 기능 추가보다 리팩토링 시간을 확보하세요.
기능만 계속 추가하지 말고
가끔은
정리만 하는 날
을 만드는 것이 좋습니다.
예를 들어
- 중복 함수 제거
- 파일 구조 정리
- 이름 수정
- 사용하지 않는 코드 삭제
이런 작업도 개발입니다.
2. AI에게 먼저 분석을 시키세요.
기능 추가 전에
기존 프로젝트를 먼저 분석해.
중복되는 코드가 있는지 확인하고
기존 구조를 최대한 재사용해서 구현해줘.
이 한 줄만 추가해도
새로운 파일을 무한정 만드는 경우가 줄어듭니다.
3. 리팩토링도 AI에게 맡기세요.
기능만 시키지 말고
가끔은
프로젝트 전체를 리뷰해서
기술 부채가 있는 부분을 찾아줘.
우선순위대로 리팩토링 계획도 작성해줘.
라고 요청해 보세요.
의외로 꽤 좋은 리뷰를 받을 수 있습니다.
4. 사용하지 않는 코드는 지우세요.
AI는 삭제를 잘 하지 않습니다.
그래서 주기적으로
사용하지 않는
- 컴포넌트
- 함수
- API
- import
- npm 패키지
를 찾아 제거해줘.
라고 시키는 것도 좋습니다.
5. 같은 기능을 또 만들지 마세요.
새 기능을 만들기 전에
AI에게 먼저 물어보세요.
기존 프로젝트에서
이미 비슷한 기능이 있는지 먼저 찾아줘.
있다면 재사용하고
없을 때만 새로 만들어줘.
이 습관 하나만으로도 기술 부채를 크게 줄일 수 있습니다.
6. "빠르게"보다 "쉽게 수정할 수 있게"를 목표로 하세요.
바이브코딩에서는
기능 하나 만드는 시간보다
다음 기능을 얼마나 쉽게 추가할 수 있는지가 더 중요합니다.
처음에는 조금 느려도
구조가 깔끔하면 이후 개발 속도는 훨씬 빨라집니다.
AI에게 추천하는 프롬프트
기능을 추가하기 전에
프로젝트 전체 구조를 분석해.
기술 부채를 늘리지 않는 방향으로 구현하고,
기존 컴포넌트와 함수를 최대한 재사용해.
중복 코드가 생기면 리팩토링해서 해결하고,
불필요한 라이브러리는 추가하지 마.
그리고 한 달에 한 번 정도는
프로젝트를 전체 리뷰해서
기술 부채를 점수로 평가해.
우선순위가 높은 문제부터
리팩토링 계획까지 제안해줘.
라고 요청해 보세요.
마무리
바이브코딩 시대에는
기능을 얼마나 빨리 만드느냐보다
기술 부채를 얼마나 적게 쌓느냐가 더 중요해졌습니다.
AI는 기능을 빠르게 만들어줍니다.
하지만 프로젝트를 오래 살아남게 만드는 것은
정리하는 습관입니다.
오늘 기능 하나를 추가했다면,
내일은 기술 부채 하나를 줄여보세요.
그 프로젝트는 생각보다 훨씬 오래 살아남을 것입니다.
이 글은 정말 정말 좋은 글이라 생각 합니다.
초기에 비해 많이 줄긴 했지만, 지금도 이 기술 부채는 어쩔수 없는 부분이고 중간 중간 정리하는 것이 필요한게 정말 맞는 말씀인것 같습니다.
소중한 글 정말 감사합니다.