Cllaude99Cllaude99

AI 시대에 성장하기

·Cllaude99
AI성장

최근 개발할 때 대부분 AI를 사용하고 있는데요.

덕분에 AI를 잘 사용하는 방법에는 점점 가까워지고 있지만, 정작 나 자신이 성장하고 있는지에 대해서는 확신이 없더라고요.

돌이켜 생각해보면, 스스로 문제에 대해 생각하고 고민하는 과정에서 개인적인 성장을 많이 했던 것 같은데, 요즘은 단순한 문제도 AI가 답을 주니, 개발자로서 성장이 더뎌지는 느낌을 받았어요.

그래서 요즘은 AI를 적극 활용하면서도 개발자로서 어떻게 성장할 수 있을지에 대한 고민이 참 많은데요.

이번글에서는 AI 시대에서 어떻게 하면 성장할 수 있을까에 대해 고민해본 내용과 이를 위해 실행하고 있는 것들을 적어보려고해요.

개인 학습에서의 성장

의도적으로 AI를 내려놓기

저는 개인 학습에서는 의도적으로 AI를 내려놓고 처음부터 끝까지 직접 구현해보는 시간을 만들고 있어요. 그래서 상대적으로 시간이 많은 집에서만큼은 개발 중 발생한 문제에 대해 스스로 설명하고 해결해나가고 있어요.

이 과정에서 Claude Code의 Learning 모드라는 것을 알게 되었는데요. ( Claude Code/output-style 명령어를 통해 Learning 모드로 전환할 수 있어요. )

이 모드를 선택하면 AI가 질문에 바로 답을 주는 대신, 스스로 답에 가까워지도록 유도 질문을 해줘요. 개인적으로는 답을 직접 알려주지 않고, 답을 찾을 수 있도록 이끌어준다는 점에서 문제를 사고하는 능력을 기를 수 있다고 느꼈어요.

Growth-with-AI 레포지토리

이러한 고민을 바탕으로 실제로 Growth-with-AI 레포지토리를 만들었어요. AI 시대에도 성장을 이어가기 위한 학습 시스템을 담은 레포지토리예요.

핵심 철학은 "답을 주지 않는 AI" 인데요.

Claude Code를 활용하되, 직접적인 답변 대신 질문을 통해 스스로 깨달음에 도달하도록 유도하는 소크라테스식 학습 방식을 적용했어요.

주요 커맨드는 아래 5가지가 있어요.

커맨드기능
/cs-learn특정 개념을 6단계 프로토콜로 깊이 있게 학습
/cs-theme7개 카테고리 중 선택해 랜덤 드릴 실행
/debug-learn버그 추적을 5단계로 진행
/review간격 반복 기반 복습 토픽 추천
/progress학습 통계 및 진행 현황 확인

학습 진행 상황은 검증 시스템을 통해 관리하고 있어요. 또, 힌트를 적게 사용하고 검증 질문을 통과하면 "통과"로 기록되고, 힌트를 3번 이상 사용하면 "학습중"으로 기록되어 재도전이 필요해요. 모든 기록은 progress/log.md에 영구 저장되어서 자신의 학습 상태를 한눈에 파악할 수 있다는 특징도 있어요.

제가 이 레포지토리를 통해 기대하는 것은, AI를 사용하면서도 사고하는 과정을 포기하지 않는 것 이에요. 단순히 답을 얻는 게 아니라, 왜 그런 답이 나오는지를 이해하는 과정이 진짜 성장이라고 생각하기 때문에 이러한 레포지토리를 만들게되었어요.

업무에서의 성장

PR 리뷰를 통한 성장

현재 저는 인턴으로 일하고 있어요. 그래서 대부분의 시간을 회사에서 보내는 만큼 회사에서는 어떻게 성장하면 좋을지에 대한 고민도 함께하고 있는데요.

저는 업무에서 다른 팀원들의 PR을 리뷰하는 과정을 통해 성장할 수 있다고 생각해요.

그 이유는 다른 사람의 코드를 읽으면서 같은 문제를 다양한 각도로 바라볼 수 있는 기회를 얻을 수 있고, 우선순위에 따라 적절하게 피드백하는 능력도 함께 키울 수 있기 때문이에요.

또, 함께 일하는 여러 개발자분들의 PR을 읽으면서, PR을 올리신 개발자분의 생각을 간접적으로나마 느낄 수 있고, PR을 리뷰하며 기존 개발자들의 선택에 담긴 도메인 지식을 파악하게 될 수 있더라고요.

여러 PR들을 확인해보면서 이부분에서는 왜 이런 구조를 선택했는지, 특정 기술이 이 맥락에서 왜 적합했는지 등을 이해할 수 있었고, 이를 통해 지식의 폭이 넓어지는 경험을 하고 있어요.

설계는 내가, 구현은 AI에게

제가 업무에서 AI를 사용하는 영역은 대부분 구현 영역이에요.

다만 앞단의 인터페이스 설계는 직접 하고 있어요.

인터페이스를 따로 설계하는 이유는, 제가 의도한 대로 올바르게 표현하기 위해서예요. 개발을 하다보면, AI가 개발한 코드라도 결국 개발자의 수정이 들어갈 수밖에 없더라고요. 그래서 수정에 사용하는 시간을 줄이려면, 애초에 개발자가 원하는 방향으로 설계하고 이를 요청하는 게 훨씬 효율적이라고 생각했어요.

그래서 제가 앞단에서 직접 인터페이스를 설계하고, 이를 바탕으로 AI에게 Plan 모드를 통해 질문하고, 검증하는 과정을 거쳐요. 이 과정에서 AI의 계획을 보면서 제가 설계한 것과 일치하는지 확인하고, 불일치하는 부분이 있다면 왜 그렇게 설계했는지 AI에게 되묻는 식으로 검증해요.

AI 피로도에 대한 생각

개인적인 생각으로는 AI에 대한 피로도는 코드를 작성하는 시점이 아니라, 그 코드를 변경해야 하는 시점에 발생한다고 생각해요.

아직 경험이 많지는 않지만 지금까지 제가 느낀건 AI가 만든 코드를 이해하지 못한 채 수정해야 하는 상황이 반복되면 AI 피로감이 쌓이더라구요. 이러한 이유에서라도 설계와 판단은 사람이 해야 한다고 생각해요. ( 개인적으로는 인터페이스에 대한 논의 자체가 일종의 설계이고, 설계하는 과정에서 개발자로서의 존재 의미를 느끼기도 해요.)

마무리

AI와 함께 성장하는 데 있어서 가장 중요한 건 균형이라고 생각해요. 개인 학습에서는 의도적으로 AI를 내려놓고 스스로 사고하는 시간을 만들고, 업무에서는 설계와 판단은 직접 하되 구현은 AI를 적극 활용하는 방식으로 균형을 맞추고 있어요. AI가 점점 더 발전하겠지만, 결국 무엇을 만들지 결정하고, 왜 그렇게 만들었는지 설명할 수 있는 능력은 사람의 몫이라고 생각해요.