AI가 뱉어낸 코드는 무조건 한 번 의심하고 눈으로 리뷰해야 합니다.
예전에 Cursor가 짜준 코드를 너무 맹신한 나머지, 덜컥 복사-붙여넣기 했다가 아예 존재하지도 않는 라이브러리를 임포트해서 밤새 에러랑 싸운 적이 있어요. 진짜 식은땀 나더라고요. AI의 '할루시네이션(환각)'에 제대로 당한 거죠.
예를 들어, AI한테 복잡한 로직을 맡겼다면 바로 실행 버튼을 누르기 전에 "이 부분이 어떤 역할을 하는지 초보자 눈높이에서 줄 단위로 설명해 줄래?"라고 한 번만 되물어보세요. 폭탄 돌리기를 피하는 가장 쉬운 방법입니다.
그러니 다음번 코딩 땐 꼭 AI의 의도를 먼저 검증하세요. 눈으로 읽는 1분이 디버깅 1시간을 아껴준답니다. 정말 강추예요!
작동한다고 끝? 이제부터가 진짜 전쟁입니다
코드가 에러 없이 돌아간다고 만족하면 안 돼요. 예외 상황과 성능을 꼭 챙겨야 합니다.
1인 개발로 이것저것 만들다 보니, 처음엔 "우와, 돌아간다!" 하고 신나서 넘겼거든요? 그런데 나중에 예상치 못한 텍스트가 입력되거나 트래픽이 조금만 몰려도 프로그램이 뻗어버리더라고요. 비행기를 사는 순간부터 여행의 진짜 피곤함(?)이 시작되듯, 코드가 돌아가는 순간부터가 진짜 시작입니다.
AI한테 깐깐한 시어머니처럼 굴어보세요. "데이터가 10만 개일 때도 딜레이 없게 알고리즘 개선해 줘", "API 호출 실패하면 3번까지 재시도하는 try-catch 구문 넣어줘"라고 콕 집어 요구하는 거예요.
일단 뼈대가 완성되었다면, 한 발짝 물러서서 엣지 케이스를 물어보세요. 코드가 훨씬 단단해집니다.
리팩토링, 기능은 그대로, 방 청소는 깔끔하게
파일 하나에 코드가 천 줄 넘게 쌓이기 전에, 기능별로 쪼개고 정리하는 리팩토링을 해야 해요.
저는 예전에 데스크톱 앱을 만들 때 멋모르고 남들이 좋다는 어려운 언어(Rust 같은 거요!)로 짰다가 코드가 너무 꼬여서 낭패를 본 적이 있어요. 결국 '아, 내가 제일 잘하는 JS(JavaScript)로 가자!' 결심하고 AI의 도움을 받아 Electron으로 뼈대부터 싹 갈아엎었거든요. 그때 코드를 모듈화하고 관심사를 분리하는 게 얼마나 중요한지 뼈저리게 느꼈어요.
AI에게 이렇게 말해보세요. "이 500줄짜리 코드에서 데이터 페칭 로직만 따로 빼서 커스텀 훅으로 분리해 줘." 안방, 거실, 화장실의 용도를 분리하듯 코드가 엄청 깔끔해지는 마법을 볼 수 있을 거예요.
나중의 나, 혹은 함께할 동료를 위해 틈틈이 AI에게 대청소를 부탁해 보세요. 나중에 수정할 때 정말 편해져요!
UX 개선: 결국 쓰는 건 사람이니까요
개발자 시선에서 벗어나, 사용자가 쾌적하게 느낄 수 있는 피드백과 레이아웃을 AI와 함께 챙겨주세요.
버튼을 눌렀는데 아무 반응이 없으면 '어? 렉 걸렸나?' 하고 마우스 막 광클하게 되잖아요? 제가 만든 서비스에서도 처음에 그런 피드백 상태를 안 만들어둬서 유저들이 그냥 나가버린 적이 꽤 있거든요.
바이브코딩의 진짜 매력은 이런 디테일을 1분 만에 추가할 수 있다는 거예요. "폼 제출할 때 귀여운 로딩 스피너 띄워주고, Tailwind CSS 써서 모바일에서도 안 깨지게 반응형으로 수정해 줘." 이렇게 한마디만 던지면 됩니다.
사소한 애니메이션이나 로딩 상태 하나가 앱의 퀄리티를 결정하거든요. 사용자가 답답해할 포인트를 찾아서 AI랑 핑퐁하며 긁어주세요!