본문 바로가기
카테고리 없음

AI 시대, 개발자에게 '컴퓨터 과학의 기본기'가 다시 중요한 이유

by notes9107 2026. 8. 10.

1. AI 코딩 도구를 쓰면서 생긴 의문

최근 1년간 AI 코딩 어시스턴트를 업무에 적극 활용해 왔습니다. 처음에는 단순히 코드 자동 완성 기능만 기대했는데, 실제로는 그보다 훨씬 넓은 범위를 커버해 준다는 사실에 놀랐습니다. 함수 하나를 요청하면 관련 테스트 코드까지, 심지어 리팩터링 제안까지 내놓습니다. 그런데 쓰면 쓸수록 한 가지 의문이 들었습니다. 결과물의 품질을 판단하는 기준은 어디에서 오는가? AI가 만들어 준 코드가 정말 올바른지, 성능이 충분한지, 확장이 가능한지 판단하는 일은 결국 제 몫이었습니다. 그리고 그 판단의 토대가 바로 컴퓨터 과학의 기본기라는 사실을 깨달았습니다.

2. 기본기를 무시했던 시절의 실패

몇 년 전만 해도 저는 '동작하는 코드'에만 집중했습니다. 알고리즘과 자료구조를 공부하는 시간이 아깝다고 생각했거든요. 그런데 프로젝트 규모가 커지면서 문제가 터지기 시작했습니다. 단순히 리스트를 처음부터 뒤지는 코드가 데이터 수만 건을 넘어가자 처리 속도가 급격히 느려졌고, 해시 구조를 쓸 자리에 리스트를 썼던 것이 원인이라는 사실을 뒤늦게 알게 됐습니다. 고객사에 배포된 뒤에야 성능 문제가 발견되어 밤새 패치를 만든 경험은 지금도 잊을 수 없습니다. 그때 느낀 부끄러움 덕분에 자료구조와 알고리즘, 그리고 시간 복잡도의 중요성을 뼈저리게 깨달았습니다.

3. AI가 대체하지 못하는 것

AI 코딩 도구는 '작성'을 도와줄 뿐 '결정'을 대신하지 못합니다. 문제를 어떻게 정의할 것인지, 어떤 트레이드오프를 선택할 것인지, 어떤 부분을 포기하고 무엇을 지킬 것인지는 결국 사람의 몫입니다. 예를 들어 '이 API 응답을 캐싱할 것인가'라는 질문에 AI는 일반적인 답을 내놓겠지만, 우리 서비스의 특성상 데이터가 얼마나 자주 바뀌는지, 메모리가 얼마나 여유 있는지, 실시간성이 얼마나 중요한지를 종합해 최종 결정을 내리는 것은 개발자입니다. 이때 필요한 것이 시스템 설계와 운영, 그리고 비즈니스 도메인에 대한 이해입니다. 이런 능력은 하루아침에 생기지 않습니다.

지난해 서비스 점검 중 특정 페이지의 응답 시간이 3초를 넘기는 문제를 발견한 적이 있습니다. 원인은 조인 쿼리가 인덱스를 타지 못하는 것이었고, AI는 '인덱스를 추가하세요'라는 답을 내놓았습니다. 그런데 실제로 필요한 것은 어떤 인덱스를 어떤 순서로 걸 것인가였습니다. 결국 데이터의 분포와 쿼리 패턴을 분석해 복합 인덱스를 설계한 것은 저였습니다. AI가 문제를 발견하는 속도는 놀랍지만, 그 문제를 우리 서비스의 맥락 안에서 해석하고 해결책을 설계하는 능력은 여전히 사람의 몫이라는 것을 다시 확인했습니다.

데이터베이스 실행 계획을 분석해 인덱스 설계에 활용하는 화면
▲ 실행 계획 분석 — 기본기가 빛을 발하는 순간

4. 기본기가 빛나는 순간

실제로 기본기가 빛을 발하는 순간은 대부분 위기 상황에서 옵니다. 갑자기 트래픽이 열 배로 늘었을 때, 데이터베이스 쿼리가 갑자기 느려졌을 때, 메모리 사용량이 비정상적으로 증가했을 때. 이런 순간마다 자료구조의 선택이 왜 중요한지, 색인(index)이 어떻게 동작하는지, 비동기 처리가 왜 필요한지에 대한 이해가 버티는 힘이 되어 주는 것을 경험했습니다. AI 도구는 이런 상황에서 해결책 후보를 제시해 줄 뿐, 문제를 정의하고 검증하고 적용하는 일은 여전히 저의 몫입니다. 따라서 기본기는 AI 시대에 오히려 가치가 더 커진 자산이라고 생각합니다.

5. 앞으로의 자세

요즘 저는 AI 도구를 쓰기 전에 먼저 스스로 생각해 보는 시간을 갖습니다. 코드를 직접 작성하는 습관을 버리지 않고, AI가 제안한 답을 무조건 받아들이기 전에 원리를 검증합니다. 공식 문서를 읽고, 표준 라이브러리의 구현을 가끔 들여다보고, 스터디에서 동료들과 함께 자료구조 문제를 풀기도 합니다. 이 과정이 때로는 비효율적으로 느껴질 때도 있지만, AI의 답을 비판적으로 평가하는 능력을 길러 준다는 점에서 의미 있는 투자라고 확신합니다.

6. 마무리

AI가 코드를 대신 작성해 주는 시대가 왔습니다. 하지만 그 코드의 품질을 가르는 기준은 여전히 컴퓨터 과학의 기본기에서 나옵니다. 빠르게 변하는 기술 트렌드보다 천천히 변하는 기본기를 더 단단히 쌓아 두는 것이, AI 시대를 살아갈 개발자에게 가장 현명한 대비가 아닐까 싶습니다.