우리는 AI가 코드를 점점 더 잘 작성하는 시대를 살아가고 있습니다.
자연스럽게 AI 시대에 개발자가 살아남는 방법에 대해 요즘 많이 고민하게 됩니다.
AI 시대 개발자는 무엇을 공부해야 할까요? 어떤 방향을 기준으로 삼아야 할까요?
그동안 여러 프로젝트를 진행하고, 수업을 하면서 많은 분들을 만나왔습니다.
특히 개발을 준비하시는 개발자 지망생, 그리고 1~3년 차의 개발자분들과 이야기를 나눠보면 공통적으로 느끼는 감정이 있었습니다.
“내가 계속 이 일을 할 수 있을까?”하는 불안감 입니다.
저 역시 이 불안감에서 자유로울 수는 없습니다. 예전에도 그랬고, 지금도 느끼고 있습니다.
하지만, 이 불안감은 사실 최근에 갑자기 생긴 것은 아닙니다.
소프트웨어 업계는 지난 수십 년 동안 끊임없이 “개발자를 대체할 수 있을 것 같은 기술”을 만들어 왔습니다.
- 고급 언어의 등장
- 스크립트 언어의 확산
- 게임 엔진과 프레임워크의 발전
- 게임 개발을 쉽게 해주는 여러 기술들
C#, Java, Python 같은 언어가 등장했을 때도, 많은 C/C++ 개발자들이 비슷한 불안을 느꼈습니다.
“이제는 더 이상 저수준을 몰라도 되는 것 아닐까?”
유니티와 같은 쉽게 사용할 수 있는 상용 엔진이 등장했을 때도, 많은 엔진 개발자들이 비슷한 불안을 느꼈습니다.
“이제는 더 이상 자체 엔진이 없어도 게임을 개발할 수 있게 되겠구나”
하지만 시간이 지나면서 자연스럽게 알게 됩니다.
도구가 바뀌었을 뿐, 개발자의 역할이 사라진 것은 아니라는 것
그리고 지금, 이 불안감은 다시 한 번 크게 올라와 있습니다.
바로 AI의 등장 때문입니다.
이제는 단순한 자동화 수준이 아니라, 코드를 직접 생성하는 단계까지 왔기 때문입니다.
그리고 AI는 점점 더 코드를 잘 작성합니다.
그래서 더 많은 분들이 이렇게 생각하게 됩니다.
- “이제 정말 개발자가 필요 없어지는 걸까?”
- “AI가 완전히 개발자와 관련 업계의 일을 대체하기 전에 빨리 다른 일을 알아봐야 할까?”
저 역시 이 질문을 여러 번 받아왔고, 비슷한 고민을 하는 분들을 곁에서 많이 보고 있습니다.
그래서인가 자연스럽게 이런 생각을 하게 되는 것 같습니다.
“AI 시대에 개발자는 무엇을 공부해야 할까?”
많은 개발자들이 공통적으로 하는 이야기
이 질문에 대해서 요즘 여러 개발자들의 의견을 찾아보면, 생각보다 비슷한 이야기를 합니다.
AI는 분명히 강력한 도구입니다.
하지만, 이해 없이 사용하는 것은 위험합니다.
저도 이 의견에 공감하는 편입니다.
코드를 “만드는 것” 자체는 이제 점점 쉬워지고 있습니다.
하지만 그 코드를 이해하고, 수정하고, 확장하는 과정은 여전히 개발자의 몫입니다.
이 부분은 AI가 대신해주지 않습니다.
요즘 여러 개발자들의 의견을 보면 비슷한 흐름이 있습니다.
이 질문에 대해서 요즘 여러 개발자들의 의견을 찾아보면, 생각보다 비슷한 이야기를 합니다.
예를 들어 One Lone Coder의 영상에서도 AI에 대해 비교적 현실적인 시각을 보여주며,
“이해 없이 생성된 코드는 결국 문제가 된다”는 점을 강조합니다.
또한 개발자 커뮤니티에서도 비슷한 의견이 반복적으로 나오고 있습니다.
AI 시대 개발자 역할에 대한 토론을 보면, AI를 활용하더라도
결국 코드를 이해하는 능력이 중요하다는 점에 많은 개발자들이 공감하고 있습니다.
정리해보면 방향은 크게 다르지 않습니다.
- AI는 강력한 도구다
- 하지만 이해 없이 사용하는 것은 위험하다
AI 코드의 가장 큰 문제
AI를 사용하다 보면 이런 상황을 꽤 자주 경험하게 됩니다.
- 코드는 돌아간다
- 하지만 이해가 안 된다
AI가 작성한 코드가 동작하기 때문에 처음에는 문제가 없어 보입니다.
원하는 기능이 만들어졌고, 실행도 잘 됩니다.
그래서 그냥 넘어가게 됩니다.
그런데 조금만 상황이 바뀌면 바로 막히게 됩니다.
- 기능을 조금 수정하려고 한다 → 어디를 건드려야 할지 모른다
- 버그가 발생한다 → 원인을 찾을 수 없다
- 성능이 이상하다 → 왜 그런지 설명할 수 없다
이 순간부터 개발이 아니라 “운에 맡기는 작업”이 됩니다.
그리고 이때 내가 이 코드를 만든 게 아니라는 느낌을 받게 됩니다.
코드에 대한 주도권이 없는 상태가 됩니다.
결국 중요한 것
최근 국내외 할 것 없이 개발 업계가 AI를 바라보는 시선을 살펴보면 너나 할 것 없이 모두 “AI를 잘 활용해야 한다”로 의견이 모아지는 것 같습니다.
그렇다면, “AI를 잘 활용하는 것”은 무엇을 의미할까요?
두 가지의 경우를 살펴보겠습니다.
AI를 잘 활용하는 개발자 vs AI에 의존하는 개발자
둘의 차이는 크지 않은 것 같지만, 실제로는 완전히 다릅니다.
우리는 모두 AI를 잘 활용하는 개발자가 되고 싶어합니다.
그렇다면 그 차이는 무엇일까요?
두 경우를 판단하는 기준에 대한 제 생각은 이렇습니다.
코드를 이해할 수 있는가
AI를 잘 활용하려면 AI가 작성한 코드가 제대로된 코드가 맞는지 검증할 수 있어야 한다고 생각합니다.
AI가 만들어준 코드를 검증하려면, 결국 그 코드가 어떻게 동작하는지 이해할 수 있어야 합니다.
이걸 피해갈 수 있는 방법은 없습니다.
“이해한다”는 것은 무엇일까?
여기서 말하는 이해는 단순히 문법을 아는 수준이 아닙니다.
코드를 보고 명확하게 설명할 수 있는 상태를 말합니다.
- 왜 이렇게 작성되었는지
- 이 구조가 왜 필요한지
- 이 값이 왜 이렇게 설정되는지
이게 가능해야 코드를 수정할 수 있고, 확장할 수 있고, 문제를 해결할 수 있습니다.
물론, 사람이 직접 코드를 작성하던 시대에 사람이 작성한 코드도 문제가 많았습니다.
그런데 이 때는 문제가 있는 코드를 이해하지 못하면 문제를 해결할 방법이 없었습니다.
하지만, AI의 등장 이래로 코드에서 발생한 문제를 AI에게 물어보고 고쳐 달라고 부탁할 수 있게 되었습니다.
그러면서 자연스럽게 문제가 있는 코드를 제대로 이해하려는 과정이 사라져가고 있는 것 같습니다.
사람이 작성한 코드와 마찬가지로, AI가 작성한 코드에도 문제가 발생할 때가 많습니다.
발생한 문제도 AI에게 다시 맡겨볼 수는 있겠지만,
결국 코드를 이해할 수 있는 능력이 있어야 발생한 문제의 원인을 파악하고 해결할 수 있습니다.
그리고 이 능력이 있어야 같은 문제가 반복되었을 때 대처가 가능합니다.
게임 개발도 예외는 아닙니다
이 문제는 게임 개발에서도 예외는 아닙니다.
게임 엔진을 사용하면 기능을 만드는 것이 처음부터 모두 개발하는 것과 비교해 상대적으로 쉽습니다.
튜토리얼을 따라 하면 결과는 나옵니다.
AI의 등장으로 이 과정이 더 쉬워진 것은 분명한 사실입니다.
하지만, 그 다음 단계에서 대부분 막히게 됩니다.
- 조금만 구조를 바꾸려고 하면 안 된다
- 기능을 확장하려고 하면 어디서부터 손대야 할지 모르겠다
- AI를 의존하지 않고는 원하는 기능을 추가할 수 없다.
상황은 다르지만 이유는 단순합니다.
동작 원리를 이해하지 못했기 때문입니다
엔진과 AI가 많은 것을 대신해주지만,
그 안에서 어떤 일이 일어나는 지까지 알려주지 않을 뿐더러 AI는 우리의 의도와 생각을 ‘정확하게’ 이해하지 못하는 경우가 훨씬 많습니다.
실제로 AI를 적극 활용하는 많은 분들이 답답함을 느끼는 지점도 비슷합니다.
AI에게 내 생각을 “정확하게” 그리고 “온전히” 전달하는 것이 너무 어렵다.
그래서 결국 돌아오는 지점
AI 시대에도 결국 방향은 명확합니다.
즉, 코드를 이해하려면 동작 원리를 알아야 하고, 이를 위한 기본기가 필요합니다.
게임 개발에서는 특히 여러 시스템들이 복합적으로 전부 연결되어 있습니다.
이걸 이해하게 되면, 단순히 “엔진을 사용하는 상태”에서 “엔진을 제어할 수 있는 상태”로 넘어가게 됩니다.
이 차이는 생각보다 큽니다.
그리고 AI에게 우리의 의도를 전달할 때에도 이해를 바탕으로 원하는 의사를 명확하게 전달할 수 있게 됩니다.
AI 시대 개발자에게 가장 중요한 것은 결국 코드를 이해하는 능력이라고 생각합니다.
마무리
AI는 앞으로 더 좋아질 것입니다.
그리고 개발 방식도 계속 바뀔 것입니다.
이건 막을 수 있는 흐름이 아닙니다.
하지만 한 가지는 바뀌지 않습니다.
이해하는 개발자가 더 강하다는 것
코드를 빠르게 만드는 것보다, 코드를 정확하게 이해하는 것이 훨씬 중요해지고 있습니다.
지금도 주변을 보시면 이미 기본기가 좋고,
개발을 잘해온 개발자들이 AI를 이해한 뒤 더 잘 활용하는 모습을 확인하실 수 있을 겁니다.
AI 이후에도 또 다른 도구는 반드시 등장할 것입니다.
이 흐름은 이미 여러 번 반복되어 왔습니다.
그래서 현재의 AI에 전적으로 의존하다가
다른 어떤 새로운 형태의 도구가 또 나타나면 허둥지둥 할 수 밖에 없습니다.
한 단계 더 나아가고 싶다면
AI 시대 개발자는 결국 기본기가 있는 사람이 살아남습니다.
결국 이런 능력을 가지려면 직접 구현해보는 수 밖에 없습니다.
해보지 않고, 이해하려고 노력하지 않았는데 동작 원리를 알 수 없습니다.
게임 개발을 하면서 “왜 이렇게 동작하는지”를 직접 이해해보고 싶다면,
단순히 기능을 사용하는 것에서 끝나는 것이 아니라, 구조를 직접 만들어보는 경험이 필요합니다.
제가 진행하고 있는 강의도 이 부분에 초점을 맞추고 있습니다.
이해를 기반으로 개발하는 경험을 한 번이라도 해보면, 이후의 학습 방식 자체가 완전히 달라집니다.
기능을 만드는 것이 아니라,
동작 원리를 이해하고
직접 구현해보는 과정에 관심이 있으시다면 한 번 참고해보셔도 좋습니다.