29P by baeba 1달전 | ★ favorite | 댓글 14개

요점:

  • AI 도구(Claude Code, Cursor) 사용으로 개발 속도는 증가했으나, 빠른 작업 템포가 두뇌 처리 한계를 초과하여 피로감 유발
  • 빈번한 문맥 전환과 도파민 과잉, 관리자 역할로의 전환이 인지 부하를 가중시킴
  • AI의 속도에 인간이 끌려가는 '기계 시간' 현상 발생, 주도적 속도 조절 필요성 대두

서론

  • AI 도구의 효용과 부작용: 40년 경력 개발자가 Claude Code와 Cursor를 활용하여 패키지 매니저(Marvai)를 개발하며 생산성 향상을 경험했으나, 동시에 전례 없는 피로감을 느낌.
  • 문제 제기: 기능 구현과 버그 수정 속도가 빨라진 반면, AI의 속도를 뇌가 따라가지 못해 짧은 시간(1시간 내외) 작업 후에도 탈진하는 현상 발생.

본론

1. 인지 부하의 급증과 '기계 시간'의 압박

  • 인지 부하 이론 적용: 팀 토폴로지(Team Topologies) 이론에 따르면 과도한 책임과 주제 전환은 인지 부하를 높임. AI 코딩은 이 부하를 한계치까지 밀어붙임.
  • 기계 주도 리듬: 과거 공장 노동자가 기계 속도에 맞춰야 했던 스트레스와 유사하게, AI가 주도하는 빠른 코딩 속도에 개발자가 쫓기는 현상('기계 시간') 경험.
  • 사고 과정의 실종: 기존 코딩은 작업 속도와 사고 속도가 일치하여 뇌가 처리할 여유(Baking time)가 있었으나, AI 코딩은 복잡한 아키텍처와 결정 과정을 순식간에 처리하여 뇌의 동기화를 방해함.

2. 도파민 과잉과 스트레스 호르몬의 공존

  • 도파민 루프 가속화: '코딩-오류-해결-성공'으로 이어지는 도파민 보상 주기가 AI로 인해 극도로 빨라짐.
  • 감정적 탈진: 잦은 도파민 분비와 속도에 따른 스트레스 호르몬이 동시에 작용하여, 코딩의 즐거움 대신 피로와 압도감을 유발함.

3. 문맥 전환(Context Switching) 비용의 증가

  • 두뇌 캐시의 과부하: 문맥 전환은 두뇌의 캐시를 비우고 다시 채우는 고에너지 작업임.
  • 미세 문맥 전환(Micro-Context Switching): AI는 여러 모듈을 동시에 수정하거나, 단순한 탭 완성 기능(Tab 키) 사용 시에도 '작성 모드'에서 '검토 모드'로의 빈번한 미세 전환을 강요하여 뇌 에너지를 급속도로 고갈시킴.

4. 개발자 역할의 본질적 변화

  • 작성자에서 관리자로: 요구사항을 코드로 구현하는 역할에서, AI라는 '빠른 팀원'의 결과물을 관리하고 검토하는 '팀 리더' 혹은 '교통정리 담당자'로 역할이 변질됨.
  • 책임의 비대칭: 5인분의 작업을 AI가 쏟아내는 동안, 개발자는 여전히 코드 품질에 대한 최종 책임을 짐으로써 관리 부담이 가중됨.

결론

지속 가능한 AI 코딩을 위한 제언

  • 의도적 속도 조절(Pacing): AI 속도에 휩쓸리지 않고 개발자가 주도적으로 작업 템포를 조절해야 함.
  • 새로운 회고 방식 도입: AI와 뇌의 싱크를 맞추기 위한 일일 회고(Retrospective) 등 새로운 작업 루틴 필요.
  • 역할 인식 전환: AI 출력을 미세하게 통제하려는 마이크로매니징을 줄이고, AI를 더 신뢰하는 방식으로 작업 스타일 변화 필요.
  • 미래 전망: 코딩의 미래는 무조건적인 속도 향상이 아니라, 인간의 인지 한계를 고려한 '의도된 느림'과 새로운 경계 설정이 될 수 있음.

저도 비슷한 경험이 있어서 이렇게 합니다.

예를 들어, 리펙토링을 한다면,

'기존 코드 분석 후 대안을 제시하라고 지시'
'대안과 기존 코드의 차이, 장단점을 요약 설명하라고 지시'
'대안이 정말 더 좋은지 검증할 수 있는 방법을 제안하라고 지시'
'직접 대안 검증'
'대안 적용 및 문서, 테스트 작성을 지시'

문제는, 토큰 사용이 너무 많아져서 비용이 많이 듭니다...

단순 노가다도 차라리 매크로를 만드는게 마음이 편하더라고요...

사람사이에도 그러함.

사람 사이에서도 이런 문제는 흔히 발생한다.
사고가 느린 사람이 매니저라면,
“일이 너무 빨라서 힘들어 함께 일하기 어렵다”고 말하고,
그 사람이 부하라면
“말귀를 잘 못 알아들어 함께 일하기 어렵다”고 말한다.

결국 함께 일하기 위해서는 서로의 캐미가 맞아야 한다.

코딩을 빼앗긴 채 코드 리뷰와 테스트만 해야 하는 고통...

전 개인 프로젝트를 제외하고는 바이브 코딩을 제한적으로 사용합니다. Cursor 자동완성에 Ideation, 동일 패턴반복 코딩 정도만 쓰죠. 롱텀 프로젝트에서 바이브 코딩으로 모든 걸 해결하는 건, 개발자로서 무책임한 행위라고 생각합니다.

프롬프트만 작성해서 결과만 내는 사람보다 작업된 결과의 코드를 이해하고 검수/검토하는 사람일 수록 피로감을 더 느끼는 것 같네요.
원문에도 나와 있습니다.

저는 'AI 덕분에 내가 할 일이 줄어서 다행이다' 라는 생각만 들어서 이런 피로감은 한 번도 겪은 적이 없어요. 저는 zed + claude 쓰는데 가끔 중간에 맥락이 바뀌면서 이상하게 동작할 때도 있는데, 그럴 때는 git에서 코드 되돌리고 '위의 내용을 종합해서 다시 작성' 하라고하면 더 깔끔하게 만들어주더라고요. 직접 타자치며 코드를 짜는게 아닌거지 머릿속에 있던 생각을 코드로 만드는 과정이 달라진 것 뿐이지 않나요? 오히려 프롬프트 입력하면서 생각이 정리되기도 하고요.

코드로 만드는 과정이 블랙박스가 되면서 코드와 머릿속에 있던 생각을 동기화하는 시간이 필요하지 않나요?
기존 코드 작성은 코드와 머릿속에 있던 생각이 같다는 게 보장이 되는데, LLM을 통한 코딩을 그게 보장이 안 되니까요.

머리속에는 로직만 있고 ai가 짠 코드가 제대로 됐는지만 확인하지, 머리속으로 코드를 짤 필요는 없지 않나요? 프롬프트에 얼마나 정확한 데이터를 넘기는지만 고민하면 돼서 오히려 일처리가 많이 빨라졌어요

얼마나 구체적으로 프롬프팅 하냐에 따라서 다를 수도 있을 것 같네요. 수도코드 수준으로 LLM에게 넘긴다면 말씀해주신 바가 이해가 가네요.

예전엔 하루 종일 코드를 작성해도 업무를 마치면 보람찬 느낌이 들고는 했는데, 이제는 하루 업무의 대부분을 대화로 처리하고 대부분의 날에 단 한 줄의 코드도 직접 작성하지 않을 때가 많았는데도 번아웃이 왔네요.. 완벽하게 공감합니다

저도 딱 이 이유로 피로가 늘었습니다. 그럴 거라고 예상하긴 해서 피곤한거 자체는 괜찮은데, 그것보다 외부에서 보기에는 코딩하면서 키보드를 막 두들기는 시간이 없으니 엄청 여유있게 일하는걸로 보이나봅니다. 제가 예전보다 더 피곤하다고 하면 잘 이해를 못하더라는....

아, 제가 피로한 이유를 명확하게 대신 설명 받은 느낌이네요.

1. "속도감은 활력소다" (긍정파)

  • 입장: 지루한 작업을 AI가 빠르게 처리해주어 오히려 에너지가 넘치고, 새로운 기술 스택 학습 비용을 줄여주어 긍정적임.
  • 사례: 낯선 언어나 프레임워크를 사용할 때 AI 에이전트 덕분에 지루한 학습 과정을 건너뛰고 바로 구현에 집중할 수 있었음.

2. "바이브 코딩의 정의 논쟁" (용어 혼란)

  • 논쟁: '바이브 코딩'이 단순히 AI의 도움을 받는 것인지, 아니면 생성된 코드를 검토하지 않고 결과만 확인하는 것인지에 대한 정의가 분분함.
  • 합의점: 원래는 '코드 미검토'를 뜻하는 부정적 뉘앙스였으나, 현재는 AI 보조 코딩 전반을 가리키는 용어로 의미가 확장됨.

3. "검증 없는 속도는 기술 부채" (신중파)

  • 비판: 코드를 이해하지 못한 채 AI가 생성한 결과물만 믿는 것은 위험함. 나중에 발생할 버그나 유지보수 비용(기술 부채)이 더 클 것임.
  • 비유: "운전자가 어디로 가는지 모르고 자율주행차에 탄 꼴"이라며, 이해 없는 구현은 결국 문제 해결 능력을 떨어뜨림.

4. "문맥 전환의 피로감" (공감파)

  • 동의: AI가 코드를 생성하는 동안 잦은 문맥 전환(Context Switching)이 발생하여 뇌의 인지 부하가 급증함.
  • 증상: AI의 결과물을 검토하고 수정하는 과정이 반복되면서, 직접 코딩할 때보다 정신적 소모가 큼. 4시간 작업이 하루 종일 일한 것처럼 피곤함.

5. "코딩의 즐거움 상실" (도파민 부족)

  • 경험: 직접 문제를 해결했을 때의 성취감(도파민)이 사라짐. 레고를 직접 조립하는 재미 대신 완성품만 보는 느낌이라 허무함.
  • 결과: 과정의 즐거움 없이 결과물만 빠르게 내놓는 작업은 개발자를 지치게 만듦.

6. "초보자에겐 독, 숙련자에겐 약" (숙련도별 차이)

  • 분석: 숙련된 개발자는 AI의 실수를 빠르게 캐치하고 수정할 수 있어 생산성이 높지만, 초보자는 잘못된 코드를 그대로 사용하여 학습 기회를 잃고 엉터리 코드를 양산할 위험이 큼.

7. "관리자 역할로의 강제 전환" (역할 변화)

  • 현상: 개발자가 직접 코드를 작성하는 '창작자'에서, AI가 쏟아내는 코드를 검토하고 수정하는 '관리자/리뷰어'로 역할이 강제 전환됨.
  • 부담: 5명의 주니어 개발자(AI)가 짠 코드를 혼자서 실시간으로 리뷰하는 것과 같은 극심한 스트레스를 유발함.

8. "비즈니스 로직 이해의 부재" (한계 지적)

  • 문제: AI는 코드는 잘 짜지만 비즈니스 맥락이나 전체 아키텍처는 이해하지 못함.
  • 현실: 결국 비즈니스 요구사항을 코드에 맞게 조율하고, 엣지 케이스를 처리하는 복잡한 작업은 여전히 인간의 몫이며, 이 과정에서 병목 현상이 발생함.

9. "휴식과 여유의 실종" (기계 시간)

  • 비유: 과거 공장 노동자가 기계 속도에 맞춰 일했던 것처럼, AI의 빠른 생성 속도에 인간이 끌려다니는 '기계 시간'에 갇힘.
  • 필요성: 컴파일 대기 시간 같은 '강제 휴식'이 사라져, 뇌가 정보를 처리하고 쉴 틈이 없음. 의도적인 휴식이 필수적임.

10. "도구의 과도기적 문제" (미래 전망)

  • 진단: 현재의 피로감은 AI 생성 속도에 비해 검증 도구(테스트, 린트 등)가 따라가지 못해 발생하는 불일치 때문임.
  • 해결책: 생성 속도만큼 검증을 자동화하는 도구가 발전하면 피로감 문제는 해결될 수 있음.