AI 개발자의 일상
요즘은 아침에 헬스장에서 가벼운 운동으로 하루를 시작한다. 운동을 좋아하는 건 아니지만, 퇴근 후에는 운동을 더 하기 싫어서 아침 출근 전의 운동을 선호한다. 부지런하다고 말하는 사람도 있지만, 사실 게을러서 아침에 하는 거라 보면 된다.
출근하면, 회사의 커피 머신으로 향해 아이스커피 한 잔을 내려 마시며 정신을 차린다. 정신을 맑게 해주는 커피 한 잔은 이젠 필수이다.
그 후, 업무 툴을 열어 연락이 온 내용이 없는지 확인한다. 가끔 배포한 AI 모델에서 문제가 발생했을 때 연락이 오는 경우가 있는데, 주로 네트워크나 스토리지 이슈로 인한 것이지만, GPU 서버나 AI 모델 자체에 문제가 있을 경우 서버 로그를 확인하여 이슈를 해결한다.
지난번에는 딥러닝 모델 API를 배포했는데, GPU 메모리 마진을 잘못 계산해서 GPU 서버에 문제가 발생해 API가 정상적으로 호출되지 않았다. 이런 경우는 정말 민망하다.
일반적으로 하루의 대부분은 현재 진행 중인 프로젝트의 기술 개발에 할애한다. 프로젝트의 시기에 따라 리서치와 공부를 하기도 하고, 데이터와 관련된 업무를 수행하거나 AI 관련 실험, 모델 학습 및 평가를 진행하기도 한다. 때로는 데이터 생산을 위한 생산 모듈을 개발하거나, 모델 배포를 위한 API를 만드는 경우도 있다. 프로젝트가 막바지에 이르면, AI 모델이 생성한 결과를 DB에서 가져와 분석하는 작업도 진행된다.
AI 기술에 국한되지 않고, 필요에 따라 다양한 알고리즘이나 전통적인 머신러닝 방법, 통계적 방법을 활용한다. 특히 Vision 팀에 소속되어 있다 보니, 3D geometry 관련 업무에서는 여전히 전통적인 방법이 많이 사용된다.
프로젝트가 마무리될 즈음에는 코드 리팩토링을 진행한다. 연구와 개발 과정에서 지저분해진 코드를 깔끔하게 수정하여 유지 보수성을 높이는 작업이다. 나에게 이 작업은 여전히 어렵게 느껴진다. 어떤 구조가 가장 좋은지, 함수명이나 변수명을 어떻게 정해야 할지 고민하는 과정이 반복된다. 이 과정에서 시니어 엔지니어분들의 도움을 요청하거나 레거시 코드를 보며 공부하는 경우가 많다. 노하우의 영역이기도 하기 때문이다. 개인적으로 아직 많이 부족하다는 생각이 들어 더 성장해야겠다는 다짐을 하게 된다.
개인적으로 새로운 일을 시작하기 위해 리서치하고 신기술을 테스트할 때 가장 설레는 기분이 든다. 무언가 새로운 것을 만들어낼 수 있다는 기대감이 생기기 때문이다. 여러 내용을 가볍게 둘러보며 논문을 스크리닝할 때는 즐겁지만, 하나의 연구를 깊게 파고드는 과정은 여전히 쉽지 않다. 그럼에도 불구하고 이 과정에서 가장 많이 성장한다고 느낀다. 기술적 도전이 나를 더욱 발전시키는 기회가 되기 때문이다.
가장 힘들고 고된 일 중 하나는 AI 모델이나 전후처리 기능을 고도화하는 작업이다. 1%에서 99%를 만들어내는 것보다 99%에서 100%를 만드는 과정이 훨씬 더 어렵게 느껴진다. 아주 작은 디테일을 잡아가는 과정이기 때문이다. 작은 실수가 나중에 큰 재앙을 불러올 수 있기에 더욱 주의가 필요하다.
데이터 관련 업무 또한 지겹고 재미없게 느껴지기도 한다. 그러나 AI를 하는 사람에게 데이터만큼 중요한 것은 없기에, 힘들지만 꼭 필요한 일이라고 스스로 되뇌이며 작업을 진행한다. 작은 실수가 큰 문제를 일으킬 수 있으므로 더욱 신중해야 한다.
회의는 꽤 다양한 이유로 진행된다. 풀어야 할 비즈니스 문제는 있지만, 기술 문제로 재정의되지 않아서 어떤 방식으로 이를 해결할지에 관한 회의를 하거나, AI 모델 또는 특정 기술 개발 과정 중 난항을 겪는 경우에는 팀원들이 모여 해결책을 찾기 위한 회의를 진행한다. 간혹 AI 모델을 배포하거나 내부 프로세스에서 생산을 하는 경우에는 관련 아키텍처를 설계하기 위해 회의를 진행하기도 한다. 이 과정에서 AI 엔지니어뿐만 아니라 리더와 데이터 엔지니어의 도움을 받는다.
그리고 일주일에 한 번, 팀원들이 모여 주간 회의를 진행한다. 지난 일주일 동안 어떤 내용을 진행했는지, 앞으로 어떤 내용을 진행할지 보고하고 서로 의견을 주고받는 자리이다. 처음에는 이 주간 회의 자리가 너무 긴장되었지만, 지금은 업무 중 어려움을 공유하고 도움을 받거나 반대로 내가 도움을 주는 경우도 있어 즐겁게 임하고 있다. 물론 회의가 늦게 끝나면 점심식사를 늦게 하러 가야 해서 조금 힘들긴 하다. 꼬르륵 소리까지 나곤 한다.
이런 여러 종류의 회의를 통해 성장의 기회가 많다. 내가 하는 일뿐만 아니라, 조금 더 넓은 시각에서 문제를 바라볼 수 있는 기회를 제공받기 때문이다. 특별한 팁은 없지만, 회의에서 이해하지 못하는 단어를 하나씩 정리해 나가다 보면 시간이 지나면서 자연스럽게 성장하게 된다.
하루 일과라고 하기엔 애매하지만, 우리팀은 비정기적으로 기술 세미나를 진행한다. AI와 Computer Vision 분야는 매번 새로운 기술과 논문이 발표되기 때문에 지속적으로 관심을 갖고 공부하는 것이 중요하다. 최근에는 LLM 관련 연구에도 많은 흥미를 느끼고 있다. 간혹 업무와 관련된 연구가 발표되거나, 흥미로운 주제의 연구가 발표되는 경우 개인 주최로 세미나를 개최한다.
이 세미나는 새로운 기술을 함께 탐구하고, 각자의 의견을 나눌 수 있는 소중한 기회다. 팀원들과의 토론을 통해 다양한 관점을 접할 수 있어 매우 유익하다. 또한 세미나에서 논의된 내용이 실제 프로젝트로 발전하는 경우도 종종 있어, 서로의 아이디어를 공유하는 것이 큰 도움이 된다. 그리고 세미나를 진행하면 업무에 지쳐서 잊고 있었던 이 분야에 대한 열정이 다시 생기는 기분이 들어서 기분 전환이 된다.
물론 일만 하는 것은 아니다. 점심 식사 후나 업무 중에 지칠 때면 팀원들과 함께 커피 타임을 가지며 이런저런 이야기를 나눈다. 대화 주제는 여행, 자동차, 재테크, 부동산 등 정말 다양하다.
이런 가벼운 대화를 하다 보면 생각보다 빠르게 친해질 수 있다. 서로의 관심사를 공유하면서 친밀감을 느낄 수 있고, 이로 인해 업무에 대한 협업도 훨씬 원활해진다. 가끔은 이러한 소소한 대화가 프로젝트 아이디어를 떠올리는 계기가 되기도 하며, 팀 분위기를 더욱 좋게 만들어준다.
입사 초기에는 퇴근 후에도 일 생각이 자꾸 나서 힘들었던 기억이 난다. 마치 끝내지 못한 일이 머릿속에 계속 맴도는 느낌 때문에 온전히 쉬는 기분이 들지 않았다. 요즘은 휴식에도 노력이 필요하다는 것을 깨닫고, 쉴 때는 확실히 쉬려고 한다. 가끔 업무와 관련된 공부를 하거나 블로그에 정리하기도 하는데, 때로는 이마저도 숙제처럼 느껴질 때가 있어 정말 하고 싶을 때만 하려고 한다. 그래야 좋은 취미로 계속 유지할 수 있게 되니까.
이렇게 AI 엔지니어로서의 하루를 정리해 볼 수 있을 것 같다. 도전적이고 성장하는 순간도 있고, 힘들고 좌절할 때도 있고 모든 걸 잊고 웃고 떠드는 순간들도 있다. 무엇이 되었든 지금 나의 소중한 일상이다.