AI는 저에게 코드는 써주었지만, 저의 언어로 만들어주지는 못했습니다

이직을 하고 Kotlin과 Rust라는 저에게 생소한 언어 두 개를 동시에 써야하는 기회가 생겼습니다. 마침 코딩 에이전트가 막 부상하던 시기였는데요. 공부를 하는 방법에도 변화를 주면 어떨까 싶었습니다. 그래서 두 프로그래밍 언어를 완전히 다른 방식으로 공부하는 실험을 시작했습니다.
Kotlin 학습은 철저하게 AI 주도로 하기로 결심했습니다. 무조건 AI가 코드를 작성하게 하고, 코드를 이해할 때도 AI의 도움을 받았습니다. 모르는 문법이 나오면 바로 질문해서 답변을 얻고, 새로운 라이브러리를 만나면 핵심 용례만 빠르게 파악했습니다. 막힘없이 궁금증이 해결되니 굉장히 효율적으로 느껴졌습니다. AI 덕분에 업무에 필요한 개발도 큰 어려움 없이 해낼 수 있었습니다. 이것이 진정한 AI 시대의 학습법인가 싶어 기뻤습니다.
반면에 Rust를 공부할 때는 저의 예전 방식을 고수했습니다. 입문서를 보면서 실습 코드를 직접 타이핑하고 라이브러리의 공식 문서를 정독하였습니다. 역시 소문대로 Rust의 학습 곡선은 상당히 가파르더군요. 혼자서는 부족하다는 생각에 사내 스터디를 만들어서 동료들과 매주 모여 어려운 부분에 대해서 토론했습니다. 그리고 깨달은 내용을 블로그에 정리해 나갔습니다. 이렇게 공부하는 게 AI 시대에 맞나 하는 의구심이 가끔 들었습니다.
그렇게 1년 반이 지난 후 저는 어떻게 되었을까요? 이제 두 언어 모두 업무에 지장이 없을 정도로 사용할 수 있게 되었습니다. 하지만 두 프로그래밍 언어를 대하는 저의 태도는 많이 달라졌습니다.
Kotlin은 당장이라도 안 쓰게 되면 모두 잃어버릴 것 같은 기분이랄까요? 이제 AI없이도 코드는 곧잘 이해할 수 있지만, 아직도 AI없이 처음부터 코드를 작성하는 일은 여전히 막막합니다. 얼마 전에 AI한테 물어본 내용을 까먹어서 같은 질문을 반복하고 있는 제 자신이 한심하게 느껴지기도 하고요. 그래서인지 어디가서 저를 떳떳하게 Kotlin 개발자라고 소개하지 못합니다. Kotlin이 제 프로그래밍 언어라는 느낌이 들지 않기 때문입니다.
반면에 머리를 쥐어뜯으며 학습한 Rust에게는 친밀감과 애정이 생겼습니다. 그동안 블로그에는 어느덧 Rust 관련 글이 70편가량 쌓였더라고요. 입문서와 공식 문서로 기초로 다지고 업무와 스터디를 통해 실전 경험을 쌓고, 글을 통해서 생각을 정리하면서 지식이 내재화가 된 것 같습니다. Rust에 관심을 갖는 개발자들을 만나면 Rust와 직접 부딪히며 공부했던 경험과 학습 노하우에 대해서 신나게 떠들고 있는 자신을 발견하게 됩니다.
Rust에 어느정도 자신감이 생긴 뒤에는 오픈소스 기여에도 도전했는데요. 꾸준히 활동한 결과 올해 초에 Rust 용 MCP SDK의 메인테이너가 되었습니다. 시대가 시대인 만큼 AI를 아예 안 쓸 수는 없지만 MCP 생태계에서 중요한 역할을 하는 라이브러리이기 때문에 사명감을 갖고 코드를 대하고 다른 기여자들과 피드백을 주고 받으며 개발을 하고 있습니다.
결국 저에게 Kotlin은 업무 때문에 어쩔 수 없이 써야하는 언어가 되었고, Rust는 쓰면 쓸수록 더 재미있고 더 배우고 싶은 언어가 되었습니다.
최근에는 매니저와 상의하여 모든 Kotlin 개발을 중단하고 앞으로 Rust 개발에만 집중하기로 했습니다. 처음에는 배우고자 하는 열정이라도 있었지만 이제는 더 이상 Kotlin을 잘 하고 싶은 의지가 남아있지 않아, 차라리 다른 엔지니어가 해당 업무를 맡는 것이 저와 회사 모두를 위해 더 나은 선택이라고 판단했기 때문입니다.
저에게 Kotlin이 그랬던 것처럼, 여러분께도 AI 없이는 말할 수 없는, 빌려 쓰기만 하는 언어가 있지는 않으신가요? AI와 함께 효율적으로 협업하면서도, 그 지식을 어떻게 자신의 것으로 만들 것인지 고민하는 분들에게 제 실험이 작은 힌트가 되었으면 좋겠습니다.
This work is licensed under CC BY 4.0