2024년 여름, 나는 지인과 함께 창업을 해서 밤낮없이 매일 달리고 있는 상태였다. 아는 것도 없이 맨땅에 헤딩하며 서비스 개발을 하고 있었지만, 사업을 깊이 할수록 시니어 혹은 노하우를 가진 누군가의 조언이나 가이드를 절실하게 느끼고 있었다.
지난 3년간의 협업 경험을 살려 팀을 리드하고 있었지만, 현업 경험은 없었기에 여전히 모르는 게 너무 많다고 느꼈다.
그러던 중, 팀원으로부터 2024 당근 썸머테크 지원이 시작되었다는 소식을 듣게 되었다. 내가 당시에 느끼고 있던 니즈에 완벽히 부합했기 때문에, 지원하지 않을 이유가 없었다.
"현업에서 어떻게 일 하는지 알려주는데 돈도 준다고...?"
만들어두었던 이력서도 재정비하고, 과제 테스트도 정말 영혼까지 끌어모아서 구현했던 것 같다. 그래서...
운 좋게도 최종 합격하게 되었고, 8월 11일부터 11월 11일까지 3개월간 당근에서 Frontend Engineer 인턴 포지션으로 근무하게 되었다.
처음 당근에 입사했을 때 가장 신기했던 것은 놀라울 정도의 투명성이었다. 당근은 신뢰와 충돌
을 기반으로 하는 만큼, 신뢰와 투명성을 아주 중요한 요소로 생각한다. 인턴 기간이 지나면 외부인이 될지도 모를 나에게도 이런 정보를 공개한다고...? 싶었다. 이런 투명성 덕분에 신뢰가 쌓이고, 그 신뢰를 기반으로 하는 충돌은 논쟁이 아닌 건강한 토론으로 이어지게 되었던 것 같다.
내가 회사를 신뢰하는 만큼 동료 간의 신뢰도 정말 신기할 정도로 높았다. 인턴인 내가 이런 책임을 가져도 된다고...?라는 생각이 들 정도로 인턴과 정직원의 구분이 없이, 완전히 동일한 업무를 했다. 이런 당근의 특징 덕분에 단시간에 더욱 빠르게 성장할 수 있었다고 생각한다.
당근에 입사하고, 여기에서 내가 얻어갈 수 있는 게 어떤 게 있을까 생각해봤다. 여기서 해내지 못한다면 왠지 어디에서도 해낼 수 없을 것만 같았다. 지금 생각해보면 그래서 더 최선을 다했던 것 같다. 그래서 세 단계로 계획을 세워봤다.
당근에서의 첫 목표는 기존 시스템에 최대한 녹아드는 것이었다. 이제 막 입사한 내가 도움이 되지 못할 망정, 걸림돌이나 되지 말자는 생각이었다. 그래서 입사 첫 주에 내가 할 수 있는 게 무엇인지 생각해본 것 같다. 그러다가 우리 팀이 관리하는 인터널 프로덕트에 테스트 코드가 따로 없다는 것을 알게 되었다.
그때 '이거다!' 싶었던 것 같다. 바로 Vitest 테스트 환경을 세팅하고 유닛 테스트를 작성하기 시작했다. 덕분에 자연스럽게 기존 코드베이스를 읽고 거기에 녹아들 수 있었던 것 같다. 단기 목표를 커버리지 60%로 설정하고, 최대한 많은 부분에 대해서 테스트를 작성하려고 노력했다. 그 과정에서 자연스럽게 질문도 하게 되었고, 폴더 구조 변경에 대한 제안도 하게 되었다. 코드를 읽으면서 기여도 할 수 있는 좋은 전략이었다고 생각한다.
"이때 PR에 Coverage Report를 넣어주는 CI도 추가했는데, 요것도 잘 한 것 같다."
초반에 또 어려웠던 점 중 하나는, 모르는 게 너무 많다는 점이었다. 찾아보지도 않고 질문부터 하는 핑프가 되고 싶지 않았고, 일일이 질문하기에는 너무 사소한 것 아닌가...? 하는 질문이 많았기 때문에, 노션과 슬랙을 열심히 뒤져가면서 맥락을 읽어나갔다. 그런데 이 과정이 너무 오래 걸린다는 생각이 들었다. 여기서 크게 도움이 되었던 게 바로 노션 AI였다. 노션 AI는 RAG가 잘 되어 있어 당근 내부 구성원만이 맥락 속에서 알 수 있을 만한 내용들을 질문하면 알아서 잘 정리해서 알려준다.
예를 들어, 당근에서는 주간 전사 미팅을 A, B, C 그룹으로 나눠서 한다. 그런데 C 그룹 미팅은 항상 경영진을 중심으로 진행했는데, 이게 C레벨 할 때의 그 C 그룹인지, A, B가 있으니까 그냥 C 그룹인지가 궁금했다. 그래서 노션 AI한테 물어보니, 그렇게 진행하게 된 히스토리를 단번에 찾아서 알려주었다.
당근에서 몇 주가 지나고, 이제 많은 맥락을 파악하게 되었고, 도메인 지식이 늘고, 코드베이스에 익숙해지기 시작했다. 이 시점부터 나의 목표는 민폐 끼치지 않기 가 아니라 팀의 동력원이 되기 였다. 그래서 다음 목표는 백로그 비우기가 되었다.
내가 입사하기 전까지는 팀 일정이 여유 있는 상태가 아니었기 때문에, 당장 급한 일이 아닌 많은 태스크가 백로그에 들어가 있었다. 중간에 합류했기 때문에 어떤 프로젝트에 대해 오너십을 갖기 애매했고, 때문에 당장 뭔가 새로운 걸 하기보다는 팀의 묵은 숙원을 풀면 어떨까 하고 생각했다. 그래서 백로그에 있는 작업들을 하나둘씩 지워나갈 수 있었고, 입사한 지 한 달 정도 되었을 때 백로그의 대부분을 비울 수 있었던 것 같다. 개인적으로 게임처럼, 스테이지를 클리어해 나가는 느낌이라 굉장히 재미있는 작업이었다.
그 다음 목표는 사실상 인턴으로서의 끝 그림을 그려보고 싶었다. 팀의 신뢰를 잔뜩 얻고 팀에 꼭 필요한 인재가 되고 싶었다. 나는 지금까지 학교에서 프로젝트를 할 때면 항상 잘한다는 칭찬을 들어왔다. 그런데 내 성에 차는 실력은 아니었고, 이제 막 학습을 시작한 입장에서는 그렇게도 보일 수 있겠다는 생각이 들었다. 그래서 실력으로는 알아주는 당근 개발자 동료들로부터도 인정을 받을 수 있을지 궁금했다.
그 방법 중 하나로, 동료들에게 착시 현상(?)을 불러일으키려 했다. 업무를 할 때, 내가 일 처리가 빠르고 확실하다는 생각을 들게 하고 싶었다.
그래서 CPU 스케줄링 알고리즘 중 SJF라는 알고리즘처럼 업무를 진행했다. SJF는 간단히 말해 가장 짧은 프로세스를 우선 처리하는 알고리즘인데, 이렇게 하면 맡은 업무을 마무리하는 주기가 짧아져 같은 기간 동안 같은 일을 해도 빠르다는 느낌을 줄 수 있었다. 게다가 스프린트 플래닝을 통해 특정 기간 동안 어떤 업무들을 할지를 결정하기 때문에 Starvation 걱정도 없었다.
스스로 생각하기에 성장 전략을 잘 세워서 3개월의 인턴 기간 동안 수직 성장할 수 있었던 것 같다.
나는 당근에 입사하기 전까지 오만의 골짜기에 있었다고 생각한다. 그나마 다행인 건 당시에도 그 사실을 인지하고 있었고, 탈출하고 싶어 당근에 지원했다. 그리고 뛰어난 동료들과 열정적인 팀원들을 보면서 직접 부딪히고 깨지고 깨닫게 되었던 것 같다. 기대했던 것보다도 더 큰 성장을 이루어냈기에 내 인생에 가장 중요한 선택 중 하나가 아니었나 싶다.
사실 없다. 오히려 지금 많을지도...
아쉬웠던 점에서 유추할 수 있듯이, 지금은 인턴에서 전환되어 정규직으로 근무 중이다. 정규직으로 전환된 이후에도 더 많은 경험과 더 많은 깨지고 부서짐이 있었다. 하지만 복구할 수 있는 깨짐은 오히려 더 단단한 성장으로 이어지는 것 같다. 앞으로 더 다양한 방면에서 깨져보려고 한다. 빠르게 넘어지고 빠르게 일어서는 법을 배우고 싶다.
2025년 윈터테크도 진행될 예정이라고 한다. 고속 성장을 기대하는 엔지니어라면 제발 지원했으면 좋겠다.
이게 인턴이다! 같은 글이네요 잘 읽었어요^^