AI가 코딩을 다 해준다는데, 왜 우리는 아직도 공부를 해야 할까? : '바이브 코딩'의 함정을 피하는 필수 IT 지식

 

최근 IT 업계는 거대한 패러다임의 전환을 맞이하고 있습니다. ChatGPT, Claude, Gemini 그리고 개발자들의 찬사를 받는 Cursor(커서) 같은 AI 도구들이 등장하면서, 이제 복잡한 문법을 몰라도 대화만으로 프로그램을 만드는 '바이브 코딩(Vibe Coding)'의 시대가 열렸습니다. 직관과 느낌(Vibe)만으로 코드를 짜 내려가는 이 혁신적인 경험은 우리에게 "이제 이론 공부는 필요 없는 것 아닐까?"라는 달콤한 기대감을 줍니다.

하지만 도구는 강력해진 반면, 역설적으로 '기초 체력'이 부족한 입문자들은 더 큰 장벽에 부딪히곤 합니다. AI가 짜준 코드를 어디에 붙여넣어야 할지, 왜 내 컴퓨터에서는 에러가 나는지, 그리고 이 결과물을 어떻게 세상에 내놓아야 할지 몰라 헤매게 되기 때문입니다. AI라는 날카로운 검을 든 기사가 정작 전장(개발 환경)에 나가는 법을 모르는 격이죠. 우리가 '바이브 코딩'의 함정에 빠지지 않고 AI와 함께 진정한 창조자로 거듭나기 위해 반드시 알아야 할 5가지 핵심 IT 지식을 짚어드립니다.

--------------------------------------------------------------------------------

1. 도구의 이해: CLI와 IDE, 그리고 '커서(Cursor)'가 특별한 이유

AI와 협업하기 위한 첫 번째 단계는 '어디서 대화할 것인가'를 정하는 것입니다. 여기서 우리는 CLI와 IDE라는 개념을 마주하게 됩니다.

CLI(명령어 인터페이스)는 텍스트 한 줄로 컴퓨터를 직접 조종하는 방식입니다. 반면, IDE(통합 개발 환경)는 코드 편집기부터 실행, 관리 도구까지 한데 모은 종합 작업실입니다.

"CLI라는 것은 커맨드 라인 인터페이스입니다. 커맨드 라인 한 줄 한 줄 입력하는 형태의 것을 지칭합니다. ... IDE는 통합 개발 환경인데, 소스를 에디트 할 수 있는 화면과 그 안에 컴파일이나 빌드가 될 수 있는 것까지 제공하는 것을 의미합니다."

특히 최근 각광받는 **커서(Cursor)**는 단순한 편집기가 아닙니다. VS Code(비주얼 스튜디오 코드)를 기반으로 하면서도 AI가 개발 환경 자체에 내장되어 있어, 전체 프로젝트의 맥락을 스스로 이해합니다. 기존에 VS Code에 클로드(Claude) 같은 모듈을 설치해 쓰던 방식에서 한발 나아가, AI와 IDE가 물아일체가 된 환경을 제공하는 것이죠. 이 도구를 다룰 줄 아는 능력은 AI 시대 개발의 시작점입니다.

2. 소스 관리의 심장: 깃(Git)과 깃허브(GitHub)라는 '컨텍스트' 저장소

AI에게 코드를 복사-붙여넣기 하는 것만으로는 충분하지 않습니다. 프로젝트가 조금만 복잡해져도 AI는 앞서 한 대화를 잊거나 길을 잃기 일쑤입니다. 이때 필요한 것이 바로 **'컨텍스트(전후 상황) 관리'**입니다.

**깃(Git)**은 코드의 모든 변경 이력을 기록하는 타임머신이고, **깃허브(GitHub)**는 이 기록들을 안전하게 보관하는 온라인 창고입니다. 깃을 이해한다는 것은 단순히 코드를 저장하는 것을 넘어, AI라는 '에이전트'에게 프로젝트의 과거와 현재라는 맥락을 정확히 전달할 수 있다는 뜻입니다. AI가 엉뚱한 코드를 내뱉을 때 과거로 되돌리거나, 여러 에이전트의 작업을 하나로 합칠 수 있는 안전장치가 바로 깃입니다.

3. 숲을 보는 눈: 프런트엔드와 백엔드, 그리고 프레임워크의 '덩어리'

AI에게 "웹사이트 만들어줘"라고 막연하게 요청하면 안 됩니다. 내가 만들고자 하는 결과물이 어떤 구조인지 알아야 정확한 지시가 가능합니다.

  • 프런트엔드(Frontend): 사용자가 보고 클릭하는 화면입니다. HTML, CSS, JavaScript를 기반으로 리액트(React)나 플러터(Flutter) 같은 프레임워크가 사용됩니다.
  • 백엔드(Backend): 화면 뒤에서 데이터를 처리하고 저장합니다. 스프링부트(Spring Boot), 노드JS(Node.js), 패스트 API(Fast API) 등이 대표적입니다.

AI는 우리가 선택한 언어와 프레임워크의 규칙 안에서만 움직입니다. 특히 소스 컨텍스트에서 강조하듯, 코드를 실행 가능한 상태인 '한 덩어리'로 만드는 빌드(Build) 과정(환경과 라이브러리를 포함하는 작업)을 이해해야 AI가 생성한 조각들을 실제 돌아가는 서비스로 조립할 수 있습니다.

4. 소통의 약속: 포트(Port), API, 그리고 JSON 데이터

프로그램들은 서로 대화할 때 **포트(Port)**라는 번호를 사용합니다. 서버라는 큰 건물에 찾아갔을 때, 특정 프로그램을 만나기 위한 '방 번호'라고 생각하면 쉽습니다.

  • 80 / 443: 우리가 흔히 보는 웹 서비스(HTTP/HTTPS)
  • 22: 서버에 원격 접속하는 길(SSH)
  • 3306: 데이터가 저장된 창고(MySQL 등 DB)

이런 포트들이 열려 있어야 프로그램 간 대화가 시작됩니다. 그리고 그 대화의 형식이 바로 **API(애플리케이션 인터페이스)**입니다.

"API는 어플리케이션 프로그램 인터페이스... 데이터를 주고받을 수 있는 호출 형태라고 보시면 됩니다. ... 응답은 주로 제이슨(JSON)이라는 포맷을 가장 많이 사용합니다."

내 컴퓨터 자체를 가리키는 **로컬 호스트(Localhost)**에서 서버를 띄우고, 데이터를 가져오는 GET, 저장하는 POST 요청을 이해해야 합니다. 또한 실제 데이터는 SQL이라는 명령어를 통해 MySQL이나 MongoDB 같은 데이터베이스에 저장된다는 흐름을 알아야 AI가 설계한 데이터 구조를 장악할 수 있습니다.

5. 세상에 내놓기: CICD와 배포 자동화가 필요한 이유

개발이 끝났다고 끝이 아닙니다. 내 컴퓨터에서만 돌아가는 코드를 실제 서버에 올려 전 세계 사람들이 보게 하는 '배포' 과정이 남았습니다. 과거에는 AWS(아마존 웹 서비스) 같은 복잡한 설정을 직접 해야 했지만, 이제는 Vercel이나 Cloudflare Pages처럼 깃허브와 연결만 하면 끝나는 간편 서비스들이 많습니다.

여기서 중요한 통찰이 있습니다. AI와 함께하면 개발 속도는 빛의 속도로 빨라집니다. 그런데 배포를 매번 수동으로 한다면 인간이 AI의 속도를 따라가지 못하는 병목 현상(Bottleneck)이 발생합니다. 그래서 소스가 수정되면 자동으로 서버에 반영되는 CICD(지속적 통합/배포) 개념이 '바이브 코딩'의 마무리를 장식하는 핵심 퍼즐이 됩니다.

--------------------------------------------------------------------------------

결론: 당신은 사용자로 남겠습니까, 창조자가 되겠습니까?

AI는 우리가 상상하는 것을 코드로 번역해 주는 가장 강력한 도구임이 분명합니다. 하지만 도구가 화려해질수록 그것을 휘두르는 기사의 기초 체력은 더욱 중요해집니다. 오늘 살펴본 도구(IDE), 기록(Git), 구조(Framework), 소통(API/Port), 배포(CICD)라는 5가지 지식은 AI가 준 코드의 파편들을 하나의 완성된 서비스로 엮어내는 힘입니다.

AI가 모든 코드를 대신 짜주는 날이 오더라도, 그 코드가 '왜' 그렇게 작동하는지, 그리고 '어디로' 가야 하는지 결정하는 키는 여전히 인간의 손에 쥐어져 있습니다.

AI의 결과물을 단순히 소비하는 '사용자'에 머무르시겠습니까, 아니면 기술의 원리를 이해하고 AI를 진두지휘하는 '창조자'가 되시겠습니까? 바이브 코딩의 즐거움 아래, 탄탄한 기초 지식이라는 뿌리를 내리시길 응원합니다.