Vibe coding and agentic engineering are getting closer than I'd like
개요
AI 코딩 도구의 발전으로 인해 '바이브 코딩'과 '에이전트 공학'의 경계가 모호해지고 있으며, 개발자는 AI가 생성한 코드에 대한 책임과 신뢰성에 대한 새로운 과제에 직면하고 있습니다.
주요 내용
* 바이브 코딩 vs. 에이전트 공학의 융합: '바이브 코딩'은 코드 품질이나 제약 사항에 대한 고려 없이 AI에게 원하는 것을 요청하고 결과물을 확인하는 방식입니다. 반면 '에이전트 공학'은 보안, 유지보수성, 성능 등을 고려하는 전문 소프트웨어 엔지니어가 AI 도구를 활용하여 고품질의 프로덕션 시스템을 구축하는 방식입니다. 최근에는 AI 코딩 에이전트의 신뢰성이 높아지면서 개발자가 AI가 생성한 코드의 모든 라인을 검토하지 않는 경우가 늘어나, 이 두 가지 방식의 구분이 모호해지고 있습니다.
* 책임감과 신뢰성의 문제: AI 코딩 에이전트는 전문적인 평판이나 책임을 가지지 않기 때문에, 개발자가 AI가 생성한 코드를 검토하지 않고 프로덕션에 사용하는 것에 대한 죄책감이 발생할 수 있습니다. 이는 마치 다른 팀이 만든 소프트웨어에 의존하되, 문제가 발생하기 전까지는 깊이 들여다보지 않는 것과 유사합니다. AI 에이전트가 반복적으로 올바른 코드를 생성하더라도, 개발자는 특정 순간에 잘못된 코드를 생성할 위험에 노출될 수 있습니다.
* 소프트웨어 평가의 새로운 도전: 과거에는 깃허브 저장소의 커밋 수, README, 자동화된 테스트 등을 통해 프로젝트에 대한 개발자의 노력을 평가할 수 있었습니다. 그러나 이제는 AI를 사용하여 이러한 요소들을 신속하게 생성할 수 있어, 겉보기에는 동일해 보이는 프로젝트라도 실제 투입된 노력과 품질을 판단하기 어려워졌습니다. 이로 인해 실제 사용 경험이 검증된 소프트웨어가 더욱 가치 있게 여겨집니다.
* 개발 생명주기의 변화: 코드 생성 속도가 비약적으로 증가하면서, 하루에 수백 줄의 코드 생성을 기준으로 설계되었던 기존 소프트웨어 개발 생명주기의 다른 단계들(예: 디자인 프로세스)에도 변화가 필요합니다. AI의 도움으로 개발 비용이 감소함에 따라, 디자인 과정에서의 위험 감수성 또한 높아질 수 있습니다.
* 소프트웨어 엔지니어 경력에 대한 전망: AI 코딩 도구는 기존 경험을 증폭시키는 역할을 하므로, 숙련된 엔지니어는 더 빠른 속도로 높은 수준의 결과물을 만들 수 있습니다. 소프트웨어 생산은 여전히 매우 어려운 작업이며, AI 도구는 이러한 어려움을 완화할 수는 있지만 근본적으로 해결하지는 못합니다. 사용자는 '바이브 코딩'보다는 AI 코딩 지원을 활용하여 더 나은 제품을 만드는 전문 기업의 서비스를 선호하는 경향이 있습니다. SaaS 제공업체의 경우, 기업들은 검증된 솔루션을 선호하며, 자체적으로 솔루션을 구축하는 것보다 안정성이 입증된 솔루션을 선택하는 경향이 있습니다.
시사점
AI 코딩 도구의 발전은 소프트웨어 개발의 효율성을 높이는 동시에, 개발자의 책임 범위, 코드 검증 방식, 그리고 소프트웨어 평가 기준에 대한 근본적인 재고를 요구합니다. 검증되지 않은 AI 생성 코드의 위험을 인지하고, 실제 사용 경험과 같은 실질적인 검증 요소를 중요시하는 방향으로 나아가야 합니다.
댓글
GitHub Discussions