안녕하세요, IT 분야에서 활동하고 계신 분들의 특별한 이야기를 음악처럼 들려드리는 Tech Mixtape!
5번째 트랙에 오신 것을 환영합니다!
5번째 트랙의 주인공은 『코딩 테스트 합격자 되기』 시리즈로 수많은 취준생의 든든한 취업 멘토로 자리 잡은 저자이자, 삼성전자 AI의 다음 스텝을 연구하는 박경록 님입니다. 지금부터, 경록 님의 'Tech Mixtape'을 함께 플레이해볼까요!
Lia: 경록 님, 안녕하세요! Tech Mixtape 5번째 트랙에 함께해 주셔서 진심으로 감사드립니다. 인터뷰를 시작하기 전에, 저희 'Tech Mixtape'의 시그니처 질문부터 드리겠습니다. 작업하실 때 즐겨 들으시는 '최애곡'이 있으신가요?
경록: 안녕하세요, 박경록입니다. 저는 요즘 2개의 곡을 많이 들어요.
첫 번째는 최유리의 숲입니다.
두 번째 곡은 태연의 Rain입니다.
(인터뷰를 즐기며 경록 님의 최애곡들을 지금 바로 들어보세요!)
인터뷰를 작성하며 두 곡의 공통점을 살펴보니 시끄럽지 않고, 멜로디가 잔잔하면서, 목소리 좋은 가수의 곡을 선호하는 것 같습니다.
Lia: 경록 님은 컴퓨터 소프트웨어공학을 전공하시고, 프로그래밍 동아리 ALPS에서도 활동하셨다고 들었어요. 처음 개발자의 길을 걷겠다고 마음먹은 계기가 궁금합니다.
경록: 사람을 대하는 것보다 기계를 대하는 게 쉬울 것 같다는 생각도 있었고, 머릿속에 있는 생각을 그대로 작성해가면서 완제품을 만드는 과정이 흥미로웠습니다.
사실 처음부터 '개발자'까지 구체적으로 생각한 건 아니었어요. 알고리즘이라는 과목에 흥미를 느껴서 자연스럽게 ALPS라는 동아리에 들어가게 되었고, 계속하다 보니 개발에도 자연스럽게 흥미가 붙은 것 같습니다.
Lia: 알고리즘에서 시작된 흥미가 지금의 저서까지 이어졌다는 게 인상 깊은데요. 지금은 Samsung Research AI Core Team에서 'Post Training & 강화학습'을 다루고 계시죠. 이게 어떤 일인지, 취준생이나 주니어 개발자도 이해할 수 있게 쉽게 소개해 주실 수 있을까요?
경록: Post Training & 강화학습은 쉽게 말하면 "이미 똑똑해진 AI 모델이, 실제 제품에서 제대로 일하도록 가르치는 단계"입니다. 이 단계 이전에는 Pre-training 과정이 있습니다. 여기서는 대량의 데이터를 학습하면서 기본 지식, 수학 능력, 코딩 능력 등 전반적인 것들을 할 수 있게 합니다.
Pre-training이 끝난 모델은 이런 질문들에는 잘 답변할 수 있어요.
1 + 1 = ?
"Hello, World"를 출력하는 파이썬 코드 구현해줘
알파벳에서 "A" 다음의 글자를 출력해줘
하지만 지식 자체가 많은 것과, 실제 제품에 등록해서 원하는 동작을 하게 하는 것은 다른 문제입니다.
예를 들어 "오늘 날씨에 맞는 음식을 추천해 줘"라고 하면, Pre-training까지 진행된 모델은 '날씨'와 '음식'이 무엇인지는 답변할 수 있지만 "비가 오니 파전을 추천합니다"라는 답변은 어렵습니다. 이때 필요한 것이 제가 다루고 있는 Post Training & 강화학습입니다.
이 과정에서는 Pre-training까지 완료된 모델에게 데이터를 주고 답변을 하게 한 후, 어떤 답변이 가장 나은지 점수를 주는 방식으로 가장 적절한 답변이 무엇인지 학습시킵니다.
즉, 필요한 방식으로 행동하도록 가르치는 과정이라고 보시면 될 것 같습니다.
Lia: 정답을 알려주는 게 아니라 더 나은 답을 고르게 만드는 과정이라는 게 흥미롭네요! 경록 님은 2014년 삼성전자에 입사해 약 10년간 시스템 S/W 엔지니어로 일하셨고, 이후 Smart Home AI를 거쳐 지금의 자리에 계신데요. 시스템 S/W에서 AI로 방향을 튼 계기는 무엇이었나요?
경록: System S/W는 특정 장비에서 다른 애플리케이션과 조화롭게 잘 동작하도록 구현하는 것이 가장 중요합니다. 이미 장비의 스펙은 정해져 있고 '안정성'이 가장 중요하죠. 쉽게 말하면 장비가 문제없이 잘 돌아가는 게 가장 큰 목적이고, 문제가 없는 코드는 건드리지 않는 것을 대부분 원칙으로 합니다.
그러다 보니 제가 생각하는 기능을 직접 설계하고 적용할 수 있는 기회 자체가 많이 주어지지 않아서 아쉬웠습니다. 구현에 대한 자유도가 낮았던 거죠.
그래서 GPU를 자유롭게 사용할 수 있는 환경에서 최신 AI 기술들을 적용해보고, 특정 주제에 대해 좀 더 자유롭게 토론하는 연구소에 매력을 느끼게 되었습니다.
Lia: 도합 13년간 쌓은 S/W 경험이 AI 팀에서 오히려 무기가 된 순간도 있었을까요? 반대로 "아, 이건 처음부터 다시 배워야 하는구나" 싶었던 순간도 궁금합니다.
경록: AI 모델 학습 과정에서는 상당히 많은 환경 이슈를 만나게 됩니다. 대표적으로 OOM(Out Of Memory), OS 환경 문제, 라이브러리나 패키지 버전 충돌 같은 문제들이죠.
이때 로우 레벨에서 System S/W 개발을 했던 경험이 많이 도움이 되었고, 지금도 이런 문제가 발생하면 부서원들에게 도움을 드리고 있습니다.
그리고 사업부에서 체계적으로 업무를 정리했던 경험 또한 많은 도움이 되었어요.
연구소에도 어느 정도 체계는 있지만, 내부에서 개발을 하고 사업자를 대응할 기회는 많지 않습니다. 반면 사업부에서는 사업자 요구사항을 꼼꼼하게 정리해야 하고, 수정사항이 발생하거나 이슈를 해결할 때마다 납득시켜야 하기 때문에 문제에 대응하거나 현황을 정리하는 경험을 할 기회가 많습니다. 연구소에 와서도 진행 사항이나 분석 결과를 공유할 때 좋은 피드백을 받을 수 있었어요. 특히 새로운 프레임워크를 도입하거나 트러블슈팅을 할 때 반응이 좋았습니다.
반대로 처음부터 배워야겠다고 생각한 부분은 '논문을 대하는 일'이었습니다.
System S/W 부서에서 제가 읽었던 문서는 대부분 데이터시트나 스펙 문서였고, 논문 자체를 읽을 기회는 없었거든요. 연구소 구성원 대부분은 석박사라 이미 논문에 익숙하시겠지만, 저의 경우 진행하려는 시험이 있을 때 적절한 논문을 찾고, 핵심 아이디어를 도출해서 내 것으로 만들기까지의 과정이 처음엔 쉽지 않았습니다.
Lia: 모델을 가르치는 일을 하고 계신 만큼, 기술을 보는 눈도 남다르실 것 같은데요. 요즘 가장 흥미롭게 보고 계신 기술과 "이건 지켜볼 만하다"를 판단하는 기준이 궁금합니다.
경록: 요즘 가장 관심 있는 기술은 지식 증류(distillation)입니다.
증류는 쉽게 말하면 이미 성능이 좋은 모델이 있을 때, 그 모델의 답변을 활용해서 다른 모델을 학습시키는 기술입니다. 성능이 좋은 모델을 teacher model, 그 답변을 활용해 학습하는 모델을 student model이라고 해요. 일반적으로 teacher model이 student model보다 규모가 큽니다. 따라서 훨씬 작은 모델로도 큰 모델의 성능을 어느 정도 따라갈 수 있게 만들 수 있죠. 보통 가전기기의 자원은 매우 한정되어 있기 때문에, 한정된 자원에서 AI 기능을 도입할 때 많이 활용됩니다.
기술을 보는 기준은 크게 두 가지인 것 같습니다.
첫째, 기존 한계를 어떻게 해결했는지를 봅니다.
더 적은 자원으로 모델을 학습시킬 수 있는지, 더 적은 데이터나 학습 시간으로도 좋은 모델을 만들 수 있는 학습 방법이 있는지 봅니다.
둘째는 실용성입니다.
아무리 좋은 기술이라도 제약 사항이 많다면 현재는 활용이 어려울 수 있습니다. 내가 적용하려는 환경과 조건에서도 이 기술을 활용할 수 있는지 확인해봅니다. 이 부분은 잘 드러나지 않는 경우가 있어서 시간을 좀 들여 찾아보는 편입니다.
Lia: 경록 님이 가장 애착을 갖고 계신 활동이 『코딩 테스트 합격자 되기』 시리즈 집필이라고 들었어요. 현업 개발자가 퇴근 후 전공 서적을 쓰기로 마음먹는 게 쉽지 않았을 텐데, 계기가 무엇이었나요?
경록: 사실 바카라을 집필하고 싶다는 생각은 많이 했지만, 엄두가 나지 않아 생각만 하고 있었습니다. 그 와중에 네이버 카페를 개설해서 자료구조와 알고리즘을 차곡차곡 정리했어요. 개인적으로 알고리즘 쪽을 좋아하기도 했고, 공부한 지도 오래되어서 정리도 할 겸 시작했습니다.
이 카페를 보시고 감사하게도 출판사에서 메일로 제안을 주셔서 집필을 시작하게 되었습니다. TMI이지만, 저에게 메일을 줄 리가 없다고 생각해서 스팸메일 처리를 할 뻔했습니다(웃음).
최종 계약을 한 이유는 제 이름으로 된 무언가를 만들어보고 싶다는 욕심도 있었고, 회사가 아닌 외부에서 제 능력을 증명해보고 싶었던 것도 있었습니다. 지금 보면 약간 열정이 넘친 과도한 자신감이 그때 뿜어져 나왔던 것 같기도 하네요.
경록 님이 집필하신 도서가 궁금하다면: 보러가기
Lia: 연구소 동료들도 바카라을 어떻게 집필하게 되었는지 궁금해하시는 분이 많다고 하셨죠. 출판 제안부터 원고 완성까지 실제로 어떻게 진행되는지 궁금합니다.
경록: 집필 과정은 이렇게 진행됩니다.
시장 조사 및 목차 작성: 내용이 좋아야 하는 건 당연하고, 잘 팔리는 바카라을 만들어야 하기 때문에 집필하려는 주제의 기존 바카라들을 조사하면서 내 바카라의 강점과 특별하다고 말할 수 있는 부분을 뽑아내고 편집자님들과 목차를 확정합니다. 방향을 잡는다고 보시면 됩니다.
샘플 집필: 문서 템플릿을 받아서 목차 중 하나를 집필해봅니다. 이 완성본을 토대로 많은 피드백이 오가고 집필 방향을 더 구체화합니다. 개발 단계에서 프로토타입을 구현한 후 소통하는 단계라고 보시면 됩니다.
초안 제출: 나머지 부분을 모두 집필해서 출판사에 제출합니다.
교정: 출판사에서 바카라에 걸맞게 문체를 수정하고, 시각적 요소를 추가해 PDF를 제작합니다. 이후 다시 저자에게 전달되어 한두 번의 교정 작업이 반복됩니다.
베타리딩 및 최종 검수: 이 과정을 거쳐 최종적으로 바카라이 나옵니다.
더 자세한 집필 후기가 궁금하다면 아래 링크를 참고해 주세요.
[합격자 되기 - 파이썬편 코딩 테스트 바카라 집필 후기]
Lia: 평소에도 정말 궁금했는데, 이렇게 구체적인 단계와 후기까지 살펴보니 생생하게 와닿네요! 사실 현업자이기 때문에 회사 일과 병행하며 한 권을 완성하기까지 쉽지 않으셨을 것 같아요. 가장 힘들었던 순간은 언제였고, 그 시간을 어떻게 버텨내셨는지 궁금합니다.
경록: 마감 일정을 준수하면서도 품질을 유지하려면 고도의 집중력이 필요하기 때문에 이 부분이 어려웠습니다. 집필하던 시기에는 대부분 회사에서 늦게 퇴근했기 때문에, 집에 오면 휴식을 취하고 싶은 욕구가 컸던 것 같아요.
그래서 일단 하루 동안 해야 할 일을 구체화했습니다. 제가 바꿀 수 없는 현재 상황은 일단 인정하고, 현실적인 목표를 세워서 매일 조금씩 해나가는 것을 목표로 했습니다.
Lia: 바카라 집필 이후에도 스터디, 무료 강의, 특강까지 꾸준히 지식 나눔을 이어오고 계신데요. 어떤 계기와 마음으로 진행하고 계시나요? 경록 님의 가장 큰 내적 동기가 궁금합니다.
경록: 의무감과 개인적인 욕심이 있는 것 같습니다.
첫째는 약속입니다.
바카라을 처음 집필하고 단톡방을 만들면서 제 바카라을 구매하신 분들께는 최소한 부족하다는 느낌을 받지 않도록 필요한 것들을 제공하겠다고 약속했습니다. 이게 시작점이었고, 약속을 이행하자는 의무감이 어느 정도 있었던 것 같아요.
둘째는 개인적인 욕심입니다.
제 가장 큰 고민 중 하나는 "어떻게 하면 좋은 바카라을 만들까?"인데요. 전공서 특성상 좋은 바카라이란 독자분들에게 지식적으로 정확하게 도움을 줄 수 있어야 합니다. 안전하다고 생각하는 집단이나 사람 관계에 계속 머물면 고정관념도 생기고, 제 자신을 돌아볼 기회도 없다고 생각하는데 취준생과 대학생분들을 만나 소통하다 보면 어떤 부분을 고민하고 있는지 명확하게 알 수 있었습니다. 그리고 제가 알고 있는 지식을 문서화하며 저를 돌아보고, 끊임없이 저의 생각들을 발전시켜나갑니다. 이것들이 실제로 바카라에 많이 반영되었습니다.
셋째는 감사한 마음입니다.
바카라을 집필했을 당시 저는 유명 유튜버도 아니었고, 어떤 외부 활동도 하지 않은 상태였습니다. 그런 상황에서 절 믿고 바카라을 구매해주신 분들께 어느 정도 보답을 하고 싶었습니다.
반대로 초반 1~2년 정도는 제가 많은 도움을 드리고 멘티분들끼리도 커뮤니케이션이 활발해질 정도의 환경을 구축하고 싶었는데, 생각만큼 외부 활동 기회가 많지 않았고 수험서 특성상 취업하시고 나가는 분들이 많이 아쉽습니다. 향후에는 이 부분까지 달성해보고 싶습니다.
Lia: 경록 님의 따뜻한 마음이 정말 잘 느껴지는 것 같습니다. 멘티분들과의 소통이 실제로 바카라에 반영되었다고 하셨는데요. 그렇게 수많은 취준생을 만나오시면서, 개발자를 꿈꾸는 분들에게 공통적으로 보이는 실수나 습관도 눈에 들어오셨을 것 같아요. 어떤 것들이 있을까요?
경록: 두 가지가 떠오르는데요.
첫 번째로, 관점을 바꿔서 ”회사 입장에서 좋은 직원은 어떤 사람일까"를 고민해봤으면 합니다.
취준생분들은 좋은 개발자의 기준을 이야기할 때 기술적 역량에 초점을 맞춥니다. 물론 기술적 역량은 반드시 필요합니다. 하지만 어느 정도 연차가 쌓이면 시험을 보는 게 아니고, 실무에서 마주치는 기술적 요소들은 동료와 협업하고 AI를 활용하면 대부분 해결할 수 있습니다.
때문에 연차가 쌓일수록 기술 스택이 얼마나 쌓여 있는가보다,
주어진 일을 얼마나 잘 이해하고
이를 해결할 적절한 개발자를 빨리 캐치해서 소통하고
한정된 시간과 비용으로 결과를 만들어낼 수 있는지
가 중요합니다.
내 개발 실력을 증명하려고 며칠 동안 끙끙대며 하나를 완성하면 당장은 뿌듯할 수 있습니다. 선배 개발자 입장에서도 기특할 수 있고요. 하지만 회사 관점에서는 다르게 볼 수 있습니다. 혼자 문제를 붙잡고 있지 않고 더 잘하는 분과 소통했다면 일이 더 빨리 끝났을 수도 있고, 본인이 다 해결하지 않고 오픈소스를 활용하는 방법도 있을 테니까요.
회사는 개인의 기술력을 자랑하는 공간이 아니라, 한정된 자원으로 결과를 만들어내는 곳에 가깝습니다. 각 개발자도 이 자원에 포함되기 때문에 관점을 바꾸도록 훈련해보시는 걸 추천드립니다.
두 번째는 스스로 원문을 읽고 이해하는 능력이 중요합니다.
요즘에는 '쉽게 설명한 영상과 글'이 많습니다. 제가 봐도 상당히 잘 풀어냈고 좋은 인사이트도 많이 제공해요. 하지만 쉽다는 것은 역으로 복잡한 배경이나 세부적인 제약 조건을 생략하면서 원래 어렵던 개념이 쉬워지는 경우가 많다는 뜻입니다. 시간을 들여서라도 직접 읽어보시고, 편리한 학습 도구들은 이후에 정리하는 차원에서 읽어보시길 추천합니다(예를 들어 앞서 말씀드린 강화학습과 같은 개념같은 것들입니다).
처음에는 시간이 오래 걸릴 겁니다. 하지만 문서를 읽으면서 중요한 부분을 빠르게 캐치하는 능력, 모르는 것을 체계적으로 검색하고 찾아내는 능력, 전체 구조를 파악하고 필요한 부분을 깊이 있게 읽는 능력이 자연스럽게 성장합니다.
이런 능력은 회사에서 어쩌면 기술 역량보다 더 중요하게 작용하고, AI 시대에는 더더욱 중요합니다. AI가 구현한 기능이 제대로 동작하는지 검증하고, 문제를 발견한 후 다시 지시하는 능력, AI에게 주어진 문제를 체계적으로 나눠서 지시하는 능력 모두 위의 능력이 필수거든요.
회사에서 많이 듣는 잔소리 중 하나가 ”일을 할 때 생각 좀 해라"입니다. 예를 들면 이런 것들이죠.
로그 추가 요청을 받았을 때: 무작위로 추가하지 않고, 이 로그는 어떤 상황에서 볼 것인지, 장애가 발생했을 때 충분한 정보가 있는지, 로그가 축적되었을 때 저장장치 용량은 충분한지 고민한 내용을 먼저 정리해 공유하고, 필요한 로그의 수준과 범위를 논의한 후 구현
성능이 느리다는 이야기를 들었을 때: 곧바로 코드를 수정하지 않고 I/O가 병목인지 네트워크 지연인지 측정하는 툴을 제작해 측정하고, 구체적인 방안을 마련해 결과를 먼저 공유한 뒤 논의
즉, 생각하면서 일한다는 것은 지시를 그대로 실행하는 사람이 아니라, 목적이 무엇인지 문제를 명확히 정의하고 이를 근거로 업무를 진행하는 것이라고 할 수 있습니다.
쉽게 설명된 글 이전에, 원문을 읽어보세요. 그렇게 훈련된 능력은 단순 구현 능력보다 판단과 검증이 중요해지는 AI 시대에 가치가 더 올라갈 것입니다.
Lia: 아쉽게도 벌써 마지막 질문인데요, 지금 취업 준비로 힘든 시간을 보내고 있는 취준생과, AI로 내 자리가 대체되진 않을까 걱정하는 주니어 개발자분들께 전하고 싶은 한마디가 있다면 부탁드립니다.
경록: 인스턴트 식품 대신 건강식을 챙겨 먹는 것처럼, 나에게 도움을 주는 지식을 잘 선별해서 내 것으로 만들어야 합니다.
5분 요약, 기술 장례식 같은 자극적인 콘텐츠를 보며 자신의 두려움을 증폭시키는 대신 냉정하게 본인에게 도움이 되는 생산적인 질문을 계속 해보세요. 몇 가지 예를 들면 이런 것들입니다.
회사에 기여하려고 생각했던 아이디어 중, 리소스가 부족해서 포기했던 것들 가운데 이제 할 수 있게 된 것은 있을까?
우리 회사에서 인력이 많이 투입되는 업무 중, 사람의 판단이 필요하지 않아 대체할 수 있는 부분이 있는가?
예외가 많아서 자동화가 힘들었던 부분 중, 새롭게 자동화할 수 있는 것이 있는가?
이 기술을 안다고 어필하는 대신, 이 기술을 활용해서 무언가 해봤다고 할 수 있는 포인트가 있는가?
이 문제를 해결하기 위해 AI를 사용한다면 프롬프트를 어떻게 설계할 것인가?
내가 리더가 된다면 업무를 분배할 때 AI에게 할당하는 부분과 사람에게 할당하는 부분을 어떤 기준으로 나눌 것인가?
이미 거스를 수 없는 것을 걱정하는 건 아무런 도움이 되지 않습니다. 어차피 사람은 1~2년 후의 미래를 정확하게 예측할 수 없으니 과도한 두려움 역시 의미가 없어요(심지어 전문가들도 당장 내년에 대한 예측조차 대부분 틀립니다).
현재 본인에게 주어진 것들을 고민하는 정도로 미래를 대비하면 크게 뒤처질 일도 없습니다.
기술은 계속 바뀌지만, 배우고 판단하고 만들어내는 사람의 가치는 쉽게 사라지지 않습니다.
“The future depends on what you do today.” — Mahatma Gandhi
미래는 오늘 여러분이 무엇을 하느냐에 달려 있습니다.
Lia: 감사합니다, 경록 님! 기본기를 단단히 쌓아 올린 자리에서 AI라는 새로운 선율을 더해가는 이야기, 그리고 내 지식이 1회용으로 끝나지 않도록 남기는 방법까지. 읽는 분들께 오래 남을 질문들을 선물해주셨습니다. 저 역시 "내가 하고 있는 걸 어떻게 하면 더 잘할 수 있을까" 되묻게 되는 시간이었어요.
경록 님의 더 많은 이야기가 궁금하다면?
- 링크드인(편하게 1촌 신청 해주세요!)
- 블로그
- 소통 오픈채팅방(바카라이 없어도 입장 가능합니다)
오늘 박경록 님의 Tech Mixtape은 여기서 마무리되지만, 앞으로도 더 많은 분들께 양질의 지식과 경험을 나눠주실 경록 님의 여정을 응원하겠습니다! 그럼 다음 트랙에서 또 다른 IT 전문가의 흥미로운 Tech Mixtape을 들어보겠습니다. 감사합니다!
Next Track
Tech Mixtape의 다음 트랙은 두 번의 희망퇴직이라는 상황을 발판삼아 더욱 크게 도약하고 있는 이장훈 님의 트랙이 오픈됩니다.
본 인터뷰의 내용의 저작권은 인터뷰이 박경록 님께 있으며, 인터뷰의 기획 및 편집(Tech Mixtape)에 대한 저작권은 이여진에게 있습니다. 본 인터뷰에는 AI로 생성한 이미지가 일부 포함되어 있습니다.