바이브 코딩(Vibe Coding)이 개발자를 멍청하게 만들고 있는가?
사람들은 AI 덕분에 이제 프로그래밍이 쉬워졌다고 말합니다.
겉으로 보기에는 사실처럼 보입니다. AI는 API를 작성하고, 데이터베이스를 연결하며, 버그를 수정할 수 있습니다. 단 몇 시간 만에 MVP를 구축할 수도 있죠.
하지만 코드를 작성하는 것은 소프트웨어 엔지니어링의 아주 작은 부분일 뿐입니다.
진짜 작업은 코드가 제대로 작동한 이후부터 시작됩니다. AI는 다음과 같은 문제들을 해결해주지 못합니다:
• 수백만 명의 사용자에게도 확장 가능한가? • 아키텍처를 유지보수하기 쉬운가? • 시스템이 안전한가? • 성능이 최적화되었는가? • 6개월 뒤에 다른 사람이 이 코드를 읽을 수 있는가?
'바이브 코딩(vibe coding)'이라 불리는 새로운 트렌드가 떠오르고 있습니다. 목표를 설명하면, AI가 코드를 생성합니다. 당신은 그것을 복사하고, 붙여넣고, 배포(ship)합니다.
이는 프로덕션(production) 환경에 도달하기 전까지만 유효합니다.
실제 트래픽이 몰리면 문제가 나타납니다. 메모리 누수, 보안 취약점, 느린 데이터베이스 쿼리 등이 발견됩니다. 버그는 항상 그곳에 있었습니다. 프로덕션 환경이 단지 그것들을 드러냈을 뿐입니다.
AI는 기본기를 이해하는 엔지니어에게 보상을 줍니다.
• 아키텍처를 안다면, AI는 더 빠르게 구축하도록 도와줍니다. • 데이터베이스를 안다면, AI는 더 나은 쿼리를 작성하도록 도와줍니다. • 보안을 안다면, AI는 방패 역할을 합니다.
아무것도 모른다면, AI는 기술 부채(technical debt)를 더 빠르게 쌓도록 도와줄 뿐입니다.
기업들도 이를 인지하고 있습니다. 생산성을 유지하기 위해 AI를 사용하라고 말하지만, 면접에서는 AI 없이 문제를 해결하라고 요구합니다.
기업은 프롬프트 엔지니어를 채용하는 것이 아닙니다. 사고하는 사람(thinkers)을 채용하는 것입니다.
새벽 2시에 시스템이 다운되었을 때, 아무도 AI가 코드를 썼는지에 관심이 없습니다. 그들은 당신이 코드를 수정할 수 있을 만큼 충분히 이해하고 있는지에 관심을 가집니다.
저도 매일 AI를 사용합니다. 프로토타입을 만들고 작업을 자동화하는 데 도움이 됩니다. 하지만 결코 AI가 제 사고를 대신하게 두지 않습니다. 코드가 왜 작동하는지 설명할 수 없다면, 저는 그것을 배운 것이 아닙니다.
도구는 변하고, 프레임워크는 사라지며, AI 모델은 매달 발전합니다. 하지만 기본기는 변하지 않습니다:
• 문제 해결 • 시스템 설계 • 자료 구조 • 확장성 • 보안 원칙 • 데이터베이스 설계
앱을 하루 만에 출시하는 것은 쉽습니다. 하지만 그것을 5년 동안 유지보수하는 것이 바로 엔지니어링입니다.
AI와 경쟁하지 마세요. AI를 더 효과적으로 만드는 엔지니어가 되세요. 먼저 기초를 다지세요. 그런 다음 AI를 통해 당신의 기술을 증폭시키세요.
바이브 코딩이 프로덕션에서 대규모 장애를 일으킬 것이라고 생각하시나요? 아래에 여러분의 생각을 들려주세요.
Source: https://dev.to/dipraj_girase_/is-vibe-coding-making-developers-dumber-5ggg
Optional learning community: https://t.me/GyaanSetuAi
