초기 개발 단계에서 환경구축, 작은 function 단위의 module 개발에서는 ai가 매우 효과적이지만, 이외 코드와 프롬프트를 때려 넣는 vibe coding 은 유지보수 관점에서 재앙이다. 처음 몇번은 성공할지 몰라도, 결국에 문제가 발생할때 마다 AI가 자신의 문제를 해결해줄 때까지 N번 시도해봐야하고, 해당 솔루션이 다른 어떤 버그를 유발할지 모르는 공포가 지속된다.
초기 개발 단계에서 환경구축, 작은 function 단위의 module 개발에서는 ai가 매우 효과적이지만, 이외 코드와 프롬프트를 때려 넣는 vibe coding 은 유지보수 관점에서 재앙이다. 처음 몇번은 성공할지 몰라도, 결국에 문제가 발생할때 마다 AI가 자신의 문제를 해결해줄 때까지 N번 시도해봐야하고, 해당 솔루션이 다른 어떤 버그를 유발할지 모르는 공포가 지속된다.
Hacker News 의견
AI를 조직에 도입하는 것은 단순히 기술적 문제가 아니라 변화 관리 문제임을 강조함. 신뢰와 투명성을 바탕으로 한 유능한 팀이 인간의 전문성과 LLM의 강점을 균형 있게 결합하는 프로세스를 만들어야 진짜 효과를 볼 수 있음. 소규모 팀이 AI로 큰 성과를 내는 사례도 생기고 있음. 하지만 대부분의 조직, 특히 대기업은 건강한 조직문화를 갖추지 못해 AI가 오히려 이 독성을 증폭시키는 현상이 나타남. 기업 임원 중에는 "Story Point"를 단순히 시간 단위로 오해해 AI가 모든 걸 반으로 줄여주는 도구로만 바라보는 경우도 있음. 근본적으로는 유지보수가 가능한 소프트웨어를 만드는 과정 자체와 동떨어져 있어 AI를 얼렁뚱땅 수익만 올려주는 통로로 인식함. 최근 AI 파일럿 프로젝트의 95%가 ROI를 달성하지 못했다는 연구 결과 역시, 현대 경영진의 무능함을 보여주는 사례임
"Prompstitudes(프롬프트에만 의존하는 직장인)"의 등장에 대해 이야기함. 동료가 내 의견을 유추한 ChatGPT의 답변만 던졌던 적이 있고, 마치 기사에서 말하는 "침범당한 기분"을 느꼈음. 이들은 무능하다기보다 LLM에 너무 의존해, 마치 슬롯머신만 계속 돌리는 카지노의 노인과 같다고 느낌
최근 동료와 대화할 때 명확히 ChatGPT의 결과가 돌아왔다는 사실 때문인지 찝찝함을 느낀 경험을 공유함. 차라리 무시당하는 게 나았다고 생각함. 특히 LLM이 자신만만하게 틀린 소리를 강하게 주장해서 더 문제였음. 작은 부분(예: 설정과 구현에서 이름만 조금 달라도)이 LLM을 완전히 헷갈리게 할 수 있음. 인간과 달리, LLM이 실수에 대해 배우거나 깨닫지 않으니 지속적으로 잘못된 방향으로 흘러가는 현상이 있음. 차라리 나쁜 인간 코드와 씨름하는 게 마음적으로 낫다고 느낌
"AI 도구가 정말 쓸모가 있을까?"라는 질문에 대해, 본인은 남들과 다르게 써서 도움이 된다고 생각함. 1983년부터 개발을 했고, 현재는 은퇴해서 혼자 작업하는 경우가 많음. 여러 도구를 써봤으나 지금은 ChatGPT와 Perplexity만 활용함. 직접 코드를 짜게 하진 않고, LLM이 제시한 코드를 참고하며 시작점으로 활용함. 가끔 통째로 쓰기도 하지만, 대부분 수정과 재작성 과정을 거침. LLM이 점점 더 못된 결과를 낼 때는 그냥 끊고 새 접근을 시도함. 이 흐름 속에서 초보 엔지니어가 LLM 코드만 따라쓴다고 상상하면 떨림. 본인에게 가장 큰 가치는 "즉시 대응해주는 StackOverflow" 같은 느낌임. 어떤 바보 같은 질문도 부끄러움 없이 물어볼 수 있고, 빠르게 괜찮은 답을 얻을 수 있음. 최근 iOS에서 PassKey 구현을 배우면서 ChatGPT 예제 코드를 그대로 시작점으로 삼아 한 줄 한 줄 이해하며 공부했음. 처음 썼던 코드와 지금의 완성 코드는 완전히 달라졌고, 이 과정을 통해 기술 이해가 깊어졌음
LLM이 기술 질문에 답하거나 새로운 접근을 제안하는 데 매우 뛰어나다고 느낌. 초보자라도 stackoverflow처럼 평가받거나 벽에 부딪히지 않고 자유롭게 질문 가능함. Copilot은 자동완성 기능이 뛰어나 코드 작성 속도를 높이고, 문서 주석이나 코드 라인을 자동 완성해줌. 이런 작은 도움들은 쉽게 검토 가능함. 그러나 LLM에게 복잡한 코드를 통째로 맡기면 혼돈이 발생하고, 오히려 디버깅에 시달리는 경험이 있음. 초보자가 LLM에 지나치게 의존하면 제대로 된 개발 역량을 키우기 어렵다고 생각함
개인적으로 Zed를 취미 개발에 사용하는 이유는 AI가 지나치게 똑똑한 척 나서지 않기 때문임. 필요할 때만 AI 기능을 부드럽게 호출할 수 있고, 평소엔 그냥 내가 코딩함. 직장에서는 VSCode AI 때문에 방해를 너무 많이 받음. 두 가지 점에서 문제임: 첫째, 인터랙션이 너무 깨지기 쉬움(Popup 클릭, 실수로 거대한 자동완성 삽입), 둘째, 흐름이 끊긴다는 점임. AI 자동완성이 유용할 때도 있지만(약 1/3 비율), 나머지 시간에는 본래 생각 흐름이 깨지고 AI 결과를 확인하느라 집중이 흐려짐. Zed에서는 이런 문제가 없어서 다시 프로그래밍의 즐거움을 되찾았다고 생각함. 결국 문제는 AI 기능 그 자체보다 구현 방식에서 발생함
AI는 UX 프로토타입 만들기에 아주 유용하다고 느낌. 짧은 시간 안에 클릭 가능한 결과물을 바로 만들어서, 여러 번 반복하며 방향만 잡고 나중엔 이런 코드는 버리고 새로 개발함. 이 방식이 잘못된 방향으로 일찍부터 많은 시간을 낭비하지 않게 도와줌. 다만, 아직 AI로 유의미한 앱 전체를 통째로 만드는 건 멀었다고 생각함
AI는 본인에게 그저 하나의 도구일 뿐이라고 봄. 본인은 하이레벨 개발자가 아니지만, 개인 프로젝트 중 막히는 부분에서 AI에게 아이디어와 피드백을 요청하는 방식으로 사용함. 중요한 점은, 코드 작성은 AI에게 맡기지 않는다는 것임(아주 단순한 보일러플레이트 정도만 제외). 내가 직접 코드를 짜는 것은 문제 해결과 창작, 그리고 배우는 과정에서 얻는 기쁨 때문임
최근 동료 코드 리뷰 중 "prepareData"라는 다차원 배열을 섞고 필터링하는 복잡한 함수를 봤는데, 해당 동료에게 "이게 무슨 역할이냐"라고 물으니, 시간을 아끼라고 LLM에 물어보라고 하여 당황스러웠던 에피소드임. 코드 리뷰를 위한 가장 기본적인 질문조차 답하지 않는 태도에 실망함
10년 후 신입 개발자들이 직접 코드 쓰는 경험 없이 바로 시니어가 되려는 현상을 우려함