AI, 강박
요즘 우리는 코드를 작성할 때 AI로 시작해 AI로 끝나는 경우가 많습니다.
개발자 커뮤니티에서도 “이러다 AI 때문에 개발자가 사라지는 것 아닌가요?”라는 이야기가 심심찮게 보입니다.
저도 초기에는 그런 생각에 사로잡혀 성장 강박을 느끼기도 했습니다.
(지금 생각하면 좋은 동기부여가 되기도 했습니다.)
변화
GPT-3.5 모델이 널리 쓰이기 시작했을 때만 해도, 답변의 상당수는 그대로 믿기 어려웠습니다.
GPT-4가 나오고, Claude Sonnet, Gemini Flash 같은 모델이 순차적으로 나오면서 상황은 빠르게 달라졌습니다.
개발자들은 AI에게 질문을 하던 것에서, 이제는 생산을 맡기는 쪽으로 이동하고 있습니다.
현재의 Claude Opus, GPT 같은 모델을 사용할 때는 사람보다 더 그럴듯하게 작성하는 순간도 자주 봅니다.
변하는 것
여기서 우리는 구분을 지어볼 필요가 있습니다.
1년 전부터 지금까지 변한 것은 무엇일까요?
크게 변한 것은 모델입니다.
Cursor, Claude Code, Skills, MCP 같은 도구들도 함께 발전하였습니다.
변하지 않은 것
그렇다면 변하지 않은 것은 무엇일까요?
모델을 선택하고, 도구를 사용하고, 의사결정을 하는 주체는 개발자 그대로입니다.
AI가 나오기 이전부터, 현재도, 그리고 미래에도 의사결정을 하는 주체는 개발자 자신입니다.
물론 AI 모델을 잘 활용해 코드를 더 빠르게 작성하고, 생산성을 끌어올리는 일은 중요합니다.
하지만 저는 그보다 더 중요한 일이 있다고 생각합니다.
개발자로서 더 나은 기술적 의사결정을 할 수 있도록 사고를 기르는 것.
그리고 좋은 코드를 알아볼 수 있는 기준을 기르는 것입니다.
그 코드가 지금 문제에 맞는지, 팀의 맥락에 맞는지, 시간이 지나도 유지보수할 수 있는 구조인지
이러한 의사결정은 결국 개발자가 판단해야 합니다.
흔들리지 않는 기준
우리는 AI 시대에 흔들리지 않는 자신만의 기준을 세울 필요가 있습니다.
저에게 그 기준은 이런 질문들입니다.
반드시 코드로 풀어야 하는 문제인지
가장 단순하게 해결할 수 있는 방법은 무엇인지
이 개발이 명확히 결과에 기여하는지
코드의 설계의도를 설명할 수 있는지
좋은 코드란 무엇인지
더 나은 추상화란 무엇인지
그래서 저는 요즘 여러 시니어 개발자의 기술 블로그를 읽고, 좋은 코드와 더 나은 추상화에 대해 더 오래 고민합니다.
그리고 “XP”, “Tidy First”, “미니멀리즘 프로그래머”와 같은 책을 보며 저만의 기준을 세워나갑니다.
도구가 빠르게 변할수록, 개발자에게는 더 단단한 기준이 필요하다고 느낍니다.