AI 시대에 코딩 배우기는 아직도 가치가 있을까?

발행: (2026년 3월 10일 AM 10:12 GMT+9)
10 분 소요
원문: Dev.to

Source: Dev.to

위의 링크에 있는 전체 텍스트를 제공해 주시면, 해당 내용을 한국어로 번역해 드리겠습니다. (코드 블록, URL 및 마크다운 형식은 그대로 유지됩니다.)

소개

솔직히 말하자면, 최근에 한 번 의심이 들었습니다. 저는 대학 마지막 1년 반을 남겨두고 AI를 전공하고 있는데, 기술 세계에서 일어나는 일을 볼수록 조용히 떠오르는 질문이 계속 저를 괴롭혔습니다: 이 모든 것이 아직도 가치가 있을까?

매 학기마다 C++, Java, Python 수업을 듣습니다 — 객체지향 프로그래밍 개념, 자료구조, 디자인 패턴 등. 그 사이에 소셜 미디어에서 사람들은 ChatGPT에 한 문장을 입력하기만 하면 완전한 작동 애플리케이션을 만든다는 것을 보았습니다. 그들은 이를 *“바이브 코딩”*이라고 부릅니다. 그리고 실제로 작동합니다. 그래서 자연스럽게 궁금해졌습니다: AI가 코드를 작성할 수 있다면, 왜 나는 수백 시간을 들여 직접 코드를 배우는 걸까요?

답을 찾기 위해서는 AI가 아니라 실제로 알고 있는 사람, 무작위 온라인 게시물이 아니라 실제 경험이 있는 사람의 의견이 필요했습니다. 그래서 생각난 사람은 오래된 교수님이었습니다. 컴퓨터 과학 교수이자 학과장이며, 수십 년 동안 이 분야의 변화를 지켜본 분이었습니다.

그래서 저는 그에게 이메일을 보냈습니다.

내가 물은 것

나는 그에게 ChatGPT가 나에게 말해준 내용을 공유했다 — 프로그래밍은 사라지지 않을 것이고, AI는 개발자를 도와 효율성을 높일 뿐이며, 인간의 창의성과 문제 해결은 언제나 필요할 것이라는 점을. 그것은 타당하게 들렸다. 하지만 나는 가 어떻게 생각하는지 알고 싶었다.

프로그래밍은 아직도 중요한가? 내가 졸업할 때도 여전히 중요한가?

그의 답변은 내가 예상한 것보다 길었다. 그리고 그것은 내가 전체적으로 생각하던 방식을 완전히 바꾸어 놓았다.

Source:

내가 몰랐던 역사 수업

교수님은 단순히 ‘예’ 혹은 ‘아니오’라고 대답하지 않으시고, 숫자들의 합을 구하는 한 가지 간단한 작업을 통해 프로그래밍 역사를 전체적으로 설명해 주셨다. 각 시대마다 같은 문제지만 전혀 다른 세계였다.

단계언어 / 패러다임예시
1순수 바이너리0001 0001 0010
2어셈블리ADD R1, R2 ; R1 = R1 + R2
3포트란 (최초 고급 언어)DO 10 I = 1, 10
4Ada (2세대 고급 언어)FOR I IN 1 .. 10 LOOP
5Java (객체 지향)for (int i = 1; i

바이브 프로그래밍은 프로그래머가 코드를 작성하는 메커니즘에 집중하기보다 아이디어와 설계 수준에서 사고하도록 해준다.

순수한 자유처럼 들리죠. 어느 정도는 그렇습니다.

그런데 교수님은 내가 예상하지 못한 부분을 덧붙이셨다:

프롬프트를 작성하는 사람이 실제로 생성된 코드를 이해하고 있는 것이 필수적이다.

왜일까? 소프트웨어는 한 번 작성하고 영원히 살아남는 것이 아니다. 소프트웨어는 전체 수명 주기를 가지며, 그 수명 주기의 모든 단계에서 실제 이해가 필요하다:

  1. 설계 – 올바른 아키텍처 선택.
  2. 구현 – 코드 작성 또는 생성.
  3. 테스트 – 동작 검증.
  4. 유지보수 – 업데이트, 패치, 확장 및 수정.

그 중 마지막 단계인 유지보수가 가장 중요하다. 실제 소프트웨어는 여러 버전에 걸쳐 지속적으로 업데이트된다. AI가 만든 코드를 이해하지 못한다면, 유지보수, 디버깅, 혹은 자신감을 가지고 진화시킬 수 없다.

교수님은 이렇게 요약하셨다: AI는 기존에 존재하던 직업—머신 코더, 어셈블리 프로그래머—을 없앴다. 하지만 동시에 새로운 직업을 만들었다: 프롬프트 엔지니어, 바이브 프로그래머. 분야가 축소된 것이 아니라 전환된 것이다.

계산기 비유

이것이 바로 내가 질문을 확실히 해결할 수 있었던 부분이다. 계산기가 등장했을 때 일어난 일을 생각해 보라.

  • 아무도 “수학은 죽었다”고 말하지 않았다.
  • 아무도 학교에서 산술 교육을 중단하지 않았다.

그 대신 당신이 달성할 수 있는 것의 바닥이 극적으로 상승했지만, 천장은 실제로 그 밑에서 일어나는 일을 이해한 사람들에게만 움직였다.

수학을 이해하지 못하는 사람 손에 든 계산기는 단지 숫자를 만들어 내는 기계일 뿐이다. 수학을 이해하는 사람 손에 든다면, 그것은 그들이 할 수 있는 모든 것을 증폭시키는 도구이다.

AI와 코드 생성도 마찬가지다. 도구는 점점 강력해지지만, 이를 조작하는 사람은 여전히 자신이 무엇을 하고 있는지 이해해야 한다—그렇지 않으면 설명도, 검증도, 수정도 할 수 없는 결과물만 만들어 낼 뿐이다.

내가 여기서 얻은 교훈

나는 졸업하기도 전에 내 교육 과정이 구식이 될지도 모른다는 생각으로 그 이메일 스레드에 들어갔습니다.
그 스레드를 끝내고 나서는 내 교육 과정이 왜 존재하는지 마침내 이해한 듯한 느낌이 들었습니다.

  • C++, Java, Python을 배우는 것은 AI가 몇 초 만에 생성할 수 있는 구문을 외우는 것이 아닙니다.
    그것은 소프트웨어가 실제로 어떻게 동작하는지에 대한 정신 모델을 구축하는 것—메모리가 어떻게 관리되고, 객체가 어떻게 상호작용하며, 알고리즘이 대규모로 어떻게 수행되는지를 이해하는 것입니다. 이 정신 모델을 통해 나는:

    • AI가 만든 코드를 비판적으로 읽고,
    • 실수를 잡아내며,
    • 더 나은 질문을 하고,
    • 궁극적으로 더 좋은 것을 만들 수 있습니다.

AI‑주도 세계에서 어려움을 겪을 프로그래머는 코딩을 배운 사람은 아닙니다.
그들은 이해 없이 복사‑붙여넣기만 배운 사람들입니다. AI는 그 방정식을 바꾸지는 않으며, 오히려 판단의 기준을 높일 뿐입니다.

그래서 아직도 가치가 있습니다.

AI 때문에가 아니라, AI 때문에 더욱 가치가 있습니다.

0 조회
Back to Blog

관련 글

더 보기 »