head-side-gearAI 시대, 부스트캠프가 다시 ‘기본기'를 말하는 이유

부스트캠프가 마주한 지원자의 변화

2023년 생성형 AI의 등장은 개발 시장을 뜨겁게 달궜습니다. 프롬프트에 따라 AI가 손쉽게 코드를 구현하는 것을 보며 개발자의 역할은 무엇인가에 대한 논쟁이 시작되었습니다. 시장에서는 개발자는 코더가 아니라 스스로 문제를 정의하고 해결하는 사람이 되어야 한다는 이야기가 대두되고 있었지만 부스트캠프가 마주한 지원자의 현실은 이와 반대였습니다. 개발자를 꿈꾸며 부스트캠프에 지원하는 사람은 매년 늘어나고 이들의 포트폴리오도 갈수록 화려해졌지만, 컴퓨터공학의 기초 지식과 이를 바탕으로 문제를 해석하고 설계하는 사고력(부스트캠프가 선발 과정에서 확인하고자 했던 사전 역량)을 충분히 갖춘 지원자는 점차 줄어들었기 때문입니다.

이를 단적으로 보여 주는 사례가 2023년 부스트캠프 웹·모바일 8기 선발 과정입니다. 부스트캠프는 개발자의 핵심 역량으로 문제 해결력을 강조합니다. 그렇기 때문에 코딩 테스트에서도 특정 알고리즘만 적용하면 풀 수 있거나, 요구사항이 명확한 문제를 출제하지 않습니다. 대신 주어진 요구사항을 해석하고, 해결 가능한 구조를 스스로 정의해야만 하는 형태로 출제합니다. 2023년에는 이전 기수 대비 선발 테스트의 난이도를 대폭 낮췄음에도 불구하고 0점자가 속출했고, 평균 점수 또한 출제자와 자문위원이 예상한 절반에도 미치지 못했습니다. 결국 챌린지를 수행할 수 있다고 판단되는 절대적 기준에 따라 선발을 진행한 결과, 최종 챌린지 입과 인원이 지난 기수에 비해 약 25% 감소했습니다.

예상 평균보다 실제 평균이 훨씬 낮게 측정된 점수 분포 그래프로, 0점 지원자가 다수 발생한 구간을 강조하여 보여주는 차트입니다.

이 현상을 해석하기 위해 부스트캠프는 다양한 가설을 세웠습니다. 개발 교육 전문성을 갖춘 코드스쿼드, 문제를 검수한 자문위원, 그리고 현업 개발자들과의 논의를 통해 공통적으로 확인할 수 있었던 것은 최근 ‘기본기를 갖춘 지원자’가 눈에 띄게 줄고 있다는 사실이었습니다. 이들이 말하는 기본기가 부족하다는 의견에는 크게 두 가지 내용이 있었습니다.

첫째, 개발 교육이나 IT 동아리 활동 등 프로젝트 경험을 쌓은 지원자는 많아졌지만, CS에 대한 이해나 문제 해결 및 구현 역량 등 기초적인 연습을 소홀히 하는 경향이 있다. 둘째, 개발자라는 직업에 대한 인기와 채용 시장의 불확실성 속에서, 취업 준비를 위한 기술 스택이나 트렌디한 프레임워크는 다루지만, 스스로 사고하고 문제를 정의해 코드를 작성해 본 경험이 부족하다.

과거에는 코드가 곧 개발자의 문제 정의와 설계의 결과물이었지만 이제는 AI를 활용해 문제를 완전히 이해하지 못해도 코드를 생성할 수 있는 시대가 되었습니다. ‘무엇을(What)’ 구현할지 결정하지 않아도 ‘어떻게(How)’에 대한 답을 손쉽게 얻을 수 있게 되면서, 역설적으로 스스로 문제를 정의하고 설계하는 역량을 연습할 기회를 잃어가고 있었던 것입니다.

부스트캠프는 이 현상을 단순한 선발의 어려움이 아니라, 지금 이 시점에 반드시 해결해야 할 ‘새로운 문제’로 정의했습니다. 프로그래밍을 배운다고 해서, 혹은 프로젝트를 했다고 해서 진짜 문제 해결력이 길러지는 것은 아닐 수 있다고 판단했습니다. 이에 부스트캠프는 문제 해결력의 초기 단계인 추상화(문제 분석과 설계)를 강조한 베이직이라는 신규 과정을 만들었습니다.


배낭을 멘 학습자가 계단을 오르며 'basic', 'challenge', 'membership'이라는 단계별 깃발이 세워진 목표 지점을 향해 나아가는 교육 프로세스 일러스트입니다.

베이직 설계

베이직은 문제 해결의 출발점인 ‘분석'과 ‘설계'에 집중했습니다. 문제 해결을 위해서는 코드를 구현하기 이전에 스스로 문제를 해석하고 구조화할 수 있는 사고 과정이 선행되어야 하기 때문입니다. 그리고 이 연습을 할 수 있도록 미션을 제작했습니다.

베이직은 2주간 매일 하나의 미션이 주어집니다. 모든 미션에는 정해진 방법도, 의도하는 정답도, 채점 기준도, 해설도 존재하지 않습니다. 학습자는 열린 조건 속에서 주어진 문제를 스스로 해석하고 정의한 후, 자신만의 방식으로 해결 방법을 설계하고 타당하게 구현해야 합니다. 심지어 일부 미션은 아예 코드를 작성하지 않고 분석과 설계만을 깊게 경험하도록 제공하기도 합니다. 학습자가 스스로의 해석과 논리를 바탕으로 문제를 정의하고 이를 구조화한 후 구현에 이르기까지의 전 과정을 주도적으로 수행할 수 있도록 설계한 것입니다.

문제 조건이 굉장히 유연하게 주어져서 “어디까지가 정답인가?”보다 “어디까지 확장할 수 있을까?”를 끊임없이 고민하게 되었습니다. 문제의 의도를 읽고 내가 어떤 방향으로 이걸 구현하고 싶은지를 설계부터 고민해야 했고 그게 곧 개발자로서의 사고력을 키우는 훈련처럼 느껴졌습니다. 기존의 학습 방식이 ‘정해진 방식대로 코드를 짜는 공장장 느낌’이었다면, 베이직은 ‘내가 직접 구조를 짜고 방향을 제시하는 설계자’가 되는 경험이었습니다.

베이직 학습자 후기

베이직은 문제 해결력의 앞단계인 ‘추상화’를 집중적으로 연습하는 과정으로, 프로젝트 경험이나 코드 구현 역량의 수준과는 무관하게 누구나 도전할 수 있도록 설계되었습니다. 개발을 처음 시작한 입문자도 문제 해결력을 경험할 수 있도록 부스트캠프의 핵심 학습 철학인 자기주도와 동료 학습을 가장 기본적인 수준으로 적용했습니다.

한 인물이 화면 위에 떠 있는 복잡한 로직의 순서도(Flowchart)를 바라보고 있는 일러스트입니다.

베이직에서 말하는 자기주도는 누군가의 안내나 정답 없이도 학습자가 스스로 결정하고 실행해보는 과정을 의미합니다. 어떤 방향으로 문제를 해석할지, 어떤 결과를 목표로 삼을지, 그 과정에서 무엇을 학습하고 어디까지 시도해 볼지까지의 모든 판단은 학습자의 몫입니다.

베이직에서 진정한 자기주도적 학습 환경을 경험했습니다. 그동안 경험한 많은 교육은 정답을 알려 주는 일방적인 방식이었는데, 베이직은 누군가가 정답을 알려 주는 것이 아니라 스스로 답을 찾아나가야 했습니다. 이 과정에서 수동적으로 지식을 받아들이는 것이 아니라, 능동적으로 문제를 해결하고 스스로를 발전시키는 개발자로 성장할 수 있는 특별한 경험을 할 수 있었습니다.

베이직 학습자 후기

베이직에서의 동료 학습은 나와 다른 접근 방식을 관찰하는 과정에서 일어납니다. 같은 문제를 해결했지만 서로 다른 방식으로 접근한 동료의 결과를 살펴보며 새로운 시야를 얻고, 본인의 사고방식을 점검해 볼 기회를 가지게 됩니다. 챌린지나 멤버십에서는 실시간으로 동료와 직접 만나 대화하고 소통하는 것과는 달리, 베이직에서는 스스로 문제를 해결하는 과정을 더욱 강조하기 위해 의도적으로 비동기적인 온라인 환경에서 최소한의 동료 학습 경험을 할 수 있는 구조를 설계했습니다.

처음엔 스스로 잘 구현하고 미션에 잘 접근했다고 생각했지만, 동료들의 코드와 피드백을 보며 생각이 달라졌습니다. 바로 '시각의 확장'이었습니다. 동료들의 다양한 해석을 접하면서 다음 미션에 더 나은 방식으로 접근하려는 저를 발견했고, 여러 동료들의 코드를 보다보니 코드를 바라보는 시각에 대한 기준들도 세워지게 되었습니다. 우물 안 개구리식 학습에서 벗어나 더 넓은 시야로 문제를 바라보는 방법을 배우게 되었습니다.

베이직 학습자 후기


베이직을 통해 얻은 것

사전 역량과 부스트캠프에 대한 이해도를 갖춘 지원자 확보

베이직은 2024년(9기)에 처음 도입되었습니다. 동시에 기존의 코딩 테스트를 ‘문제 해결력 테스트’로 개편하여, 단순 구현보다는 문제 분석 및 설계 역량을 중점적으로 다루기 시작했습니다. 1차 테스트에서 기초 역량이 검증된 지원자들에게 베이직 입과 기회를 제공했고, 과정 종료 후 2차 테스트를 통해 최종 챌린지 입과자를 선발했습니다.

그리고 그 결과는 유의미했습니다. 1차 테스트 점수가 유사했던 지원자 그룹 내에서도 베이직을 경험한 집단이 비경험 집단보다 2차 테스트(300점 만점)에서 평균 14점 이상 높은 점수를 기록하며, 월등히 우수한 성적을 거두었습니다. 그 결과, 챌린지 입과 인원이 전년 대비 약 91% 증가하여 부스트캠프가 지향하는 사전 역량을 갖춘 인재들을 대거 확보할 수 있었습니다.

또한 베이직은 자기주도와 동료 학습이라는 부스트캠프의 학습 방식을 미리 체득하는 장치로도 작동했습니다. 과거에는 챌린지 입과 후 학습 방식에 적응하는 데 다소 시간이 소요되었으나, 베이직을 경험한 학습자는 별도의 적응 기간 없이도 더욱 밀도있는 학습 환경에 즉각 몰입하는 모습을 보였습니다.

수천명을 동시에 수용하는 대규모 온라인 학습 환경 확립

베이직은 진입 장벽을 낮춰 누구나 참여할 수 있도록 설계되었습니다. 특히 2025년(10기)에는 모든 지원자에게 기회를 개방하여 총 1,537명이 동시에 과정을 시작했습니다. 이처럼 대규모 인원이 2주간 자율 학습을 수행했음에도 운영진의 개입은 최소화된 채로 안정적으로 운영되었습니다. 학습자의 미션 수행 전반을 온라인에서 자동화하고, 2024년 운영 경험을 바탕으로 학습 흐름을 정교화한 결과이며, 대규모 인원이 지속 가능한 온라인 학습 구조를 확립했다는 점에서 큰 의의가 있습니다.

베이직은 입문자도 문제 해결력을 경험할 수 있도록, 부스트캠프의 핵심 학습 철학인 자기주도와 동료 학습을 가장 기본적인 수준으로 적용하는 데 설계의 초점을 맞췄습니다. 이를 위해 기존 챌린지·멤버십 과정의 특징인 '실시간성'과 '고밀도 몰입'을 과감하게 덜어내고, 대신 “스스로 끝까지 해내는 경험”과 “동료를 통한 사고의 확장”이라는 본질적 목표에 집중했습니다. 구체적으로는 정해진 기한 내에 학습자가 미션을 스스로 완수하며 주도적인 의사결정을 내리고 있는지, 그리고 그 과정에서 다른 학습자의 결과물을 참고하며 스스로 변화와 깨달음을 얻고 있는지를 중심으로 학습 흐름을 재구성했습니다.

이러한 시도는 학습자의 규모와 수준, 목표에 따라 부스트캠프의 핵심 가치를 유연하게 변주하여 적용할 수 있다는 가능성을 확인시켜 주었습니다. 베이직을 통해 거둔 대규모 온라인 교육의 성공은 향후 부스트캠프가 더 넓은 스펙트럼의 학습자를 포용할 수 있는 탄탄한 근거가 되었습니다.


AI시대 개발자에게 중요한 경험은 무엇일까?

AI를 통한 코드 구현이 손쉬워지는 것을 넘어 2024년부터는 시장에서 “AI가 개발자를 대체할까?”라는 도발적인 질문도 나오기 시작했습니다. AI 기술의 발전으로 더 쉽고 더 빠르게 서비스를 만드는 것이 가능해지면서, ‘바이브코딩’이라는 신조어까지 등장했습니다. 그러나 1년이 지난 지금, AI가 개발자를 빠른 시일 내 대체할 것이라는 주장은 점차 힘을 잃고 있습니다. 오히려 논의의 초점은 AI와 개발자의 대립 구도가 아니라, AI를 레버리지 삼아 더 큰 가치를 창출할 수 있는 개발자로 어떻게 성장할 것인가로 옮겨가고 있습니다.

한 인물이 AI를 발판삼아, 머릿속에서 전구, 그래프, 톱니바퀴 등 다양한 아이디어가 무지개 빛으로 뿜어져 나오는 일러스트입니다.
AI가 생성한 이미지입니다.

프로그래밍의 미래와 개발자의 역할에 대한 답변(링크arrow-up-right)

  • 저희가 생각하는 엔지니어링의 본질은 코드베이스를 여러 추상화 수준에서 볼 수 있고, 특정 부분을 쉽게 수정할 수 있는 거예요. 예를 들어, 코드베이스를 의사코드 형태로 보면서 그 의사코드를 직접 수정할 수 있어요. 그러면 그 변경사항이 실제 프로그래밍 언어 수준에서 반영되는 거죠.

  • 프로그래밍은 더 높은 수준의 추상화 영역으로 이동할 거예요. 예를 들어, 코드베이스를 다양한 추상화 수준에서 볼 수 있게 될 거예요. 의사를 표현하는 코드 수준에서 작업하고, 그 변경 사항이 실제 코드에 자동으로 반영되는 그런 환경이 올 수 있어요.

  • 동시에, 프로그래머와 컴퓨터 사이의 의사소통 대역폭이 크게 높아질 거예요. 단순히 타이핑하는 것보다 훨씬 더 효율적으로 의도를 전달할 수 있게 될 거예요. 이는 프로그래밍 속도를 크게 높일 수 있죠. 하지만 이런 변화 속에서도 프로그래머의 역할은 여전히 중요할 거예요. AI가 많은 부분을 도와줄 테지만, 결국 무엇을 만들지, 어떻게 만들지를 결정하는 건 프로그래머가 될 거예요. 프로그래머의 창의성과 판단력은 여전히 핵심적인 요소가 될 거예요.

Cursor 창업자 및 Andrew ng 교수의 글에서 볼 수 있듯이, AI라는 도구의 등장으로 개발자가 해야 하는 일을 본질은 더욱 분명해졌습니다. 단순히 코드를 작성하는 일은 AI를 통해 더 쉽고 빠르게 자동화될 수 있지만 현실의 문제를 찾아내고, 그것을 기술적으로 해결할 수 있도록 정의하여, 해결가능한 구조로 만들어내는 것은 개발자의 고유한 역할이며 AI로는 대체 불가합니다.

문제정의와 추상화는 AI시대에 새롭게 등장한 역량이 아니며, 이미 오래전부터 우수한 개발자를 구분짓는 핵심역량이었습니다. “세상이 바뀌어도 개발자에게 꼭 필요한 지식과 경험을 쌓는 곳”이라는 원칙 아래, 부스트캠프는 2016년부터 개발자 양성 교육과정을 운영해 왔고, 이러한 역량을 갖춘 개발자를 “문제 해결력을 갖춘 개발자”라고 정의해 왔습니다. 그리고 문제 해결력을 기를 수 있는 학습 경험을 설계하고, 그 과정을 관찰해 왔습니다. 그리고 언제나 그랬듯 AI라는 새로운 기술로 인해 급변하는 시대의 흐름속에서도 부스트캠프는 개발자 교육에 대한 답을 찾아낼 것입니다.

Last updated