뮤팟 개발팀 막내 조니입니다.
1. 2년 차 백수에서 탈출해 개발자로서의 첫 걸음을 떼다.
눈을 감으면 아직도 2024년 7월 29일 오후 3시의 일이 생각난다. 2023년 12월 2일, 30이 넘은 나이로 그 동안 준비하던 모든 것을 버리고 부트캠프에 들어갔다.
5월 10일에 부트캠프를 수료한 뒤 약 3달 정도 만에 뮤팟에서 합격 통보를 받았다. 정말 뜬금없는 시간에 처음 보는 010이 찍힌 것을 보고 심장 박동이 빨라졌고, 내 예상이 맞았단 걸 확신한 순간 정말 몇 년만에 도파민 max를 찍으며 혼절할 뻔했다.
1초의 고민도 없이 바로 콜을 때렸고, 그렇게 뮤팟에서 개발자의 길을 걷기 시작했다.
2. 개발자로서 내 시야를 탁 틔워 준 첫 일주일
사진: Unsplash의 Markus Spiske
첫 출근을 한 후 일주일 동안 뮤팟 프로젝트 코드를 숙지하는 시간을 가졌다. 그런데 이게 코드 양이 어마어마 해서 혼절하는 줄 알았다. 게다가 내가 부트캠프 최종 프로젝트 때 설계했던 아키텍쳐(라고 하기도 민망하지만… 일단 그렇다고 치자)는 0.0000000000000000000000000000000000000001% 정도도 미치지 못할 정도로 정교하고 복잡하게 설계돼 있어서 이해하는 것이 굉장히 힘들었다. 나에게는 너무 난해했어서 읽는 것 만으로는 전혀 파악이 되지 않았다. 그래서 소스파일 명, 함수명, 내가 이해한 함수의 기능, 연결된 다른 소스파일과 함수 등을 다이어그램 그려나가듯이 그리면서 공부하였다. 그렇게 하니까 뮤팟 프로젝트 소스 코드의 한 10% 정도는 이해할 수 있었던 것 같다.
3. 순식간에 두 개 언어 사용자가 되다 - Ruby on Rails와 TypeScript
뮤팟의 상용 프로젝트는 Ruby on Rails와 TypeScript 두 가지 언어를 동시에 사용하고 있는 크고 복잡한 서비스이다. 그래서 단일 언어 체계에서 모든 처리가 끝나는 요청도 있지만, 두 언어를 왔다갔다 하며 수행되는 요청이 있을 수 밖에 없다. 이 부분이 날 참 많이 괴롭혔다.
나는 부트캠프에서 NodeJS를 전공했기 때문에 앞으로 NodeJS 개발자로서의 길만 걸을 줄 알았는데, 커리어가 시작되자 마자 bilingualist가 될 기회를 만날 수 있었다. 좋은 기회였다, 물론 정말 힘들었지만…
이러한 내 마음을 세상이 알았던 건지, 처음 내 업무는 Ruby on Rails 쪽 업무 였다. 그래서 그 때 엄청 고생을 해야 했다. 지금이야 뭐 10분이면 처리할 간단한 업무였지만, Ruby on Rails는 CoC(Convention over Configuration)철학을 기반으로 만들어진 언어라 익숙하지 않은 사람은 무쟈게 헤맬 수 밖에 없는 구조이니 어쩔 수 없었다. 사용자가 명확하게 논리적 파이프라인을 구축해줘야 하는 NodeJS와 다르게 Ruby on Rails는 자체적으로 논리적 파이프라인이 어느 정도 구축되어 있기 때문에 익숙한 사용자에겐 매우 편리하지만, 그렇지 않은 사람에겐 플로우가 중간 중간 뚝 끊기게 만드는 특징이 있기 때문이었다. 그래서 고생 참 많이 했지만, 덕분에 CoC의 개념에 대해 잘 이해할 수 있었다.
TypeScript의 경우는 내 전공 분야였기 때문에 솔직히 Ruby on Rails 보다는 더 쉬웠지만, 이 쪽은 코드의 수준 자체가 굉장히 높아서 힘들기는 마찬가지였다. 그래도 내가 NodeJS 전공이었기 때문에 이쪽 코드를 공부하는 것 자체가 굉장히 재미있어 했는데, 마침 공부하기 좋은 교재가 뮤팟에 있어서 폭풍 성장을 이룰 수 있었다.
또한, 뮤팟은 직원을 위해 업무 메뉴얼을 매우 세심히 관리하고 있어서 신입인 내가 적응하고 코드와 기능을 파악하는 데 큰 도움이 되었다.
4. 정말 많은 일을 해볼 수 있었고, 많이 배울 수 있었다.
나는 부트캠프에서 만난 선생님들과 취업한 동기들을 통해 들은 얘기를 종합해 봤을 때 특별히 큰 업무를 맡게 될 거라고 생각하지 않았고, 코드를 숙지하고 간단한 버그를 잡는 업무를 하며 익숙해지는데 시간을 보내게 될 줄 알았다. 그런데 웬걸, 지난 6개월 동안 나는 종종 위 이미지의 남자와 같이 반쯤 실성한 표정으로 머리를 싸매야 했다. 신입인 내 기준에서는 상당히 난이도와 중요도가 높고 시간이 걸리는(종종 매우 두려운…) 업무들이 새벽녘 쿠팡이츠마냥 연달아 내 앞으로 배달되었기 때문이다.
이 업무들을 쳐내기 위해 많은 노력과 공부를 해야 했고, 이거 때문에 그냥 따로 하던 공부들은 모두 잠정 중단해 버렸다. 다른 공부할 시간과 체력을 아껴 업무에 투자하기에도 벅차기도 했고, 또 지금은 따로 공부하는 것 보다 업무에만 집중하는 것이 더 성장에 도움이 많이 됐기 때문이다. 덕분에 처음 입사할 때의 나는 상상도 못할 정도의 성장을 이루었으니, 다른 회사가 아니라 여기에 올 수 있었던 것이 참 다행이라고 생각한다. 특히 요즘 같이 얼어붙고 매몰차진 취업 시장을 생각하면 더욱 더 그렇게 느껴진다.
요즘은 사업팀과 직접 소통할 기회가 잦아졌는데, 덕분에 개발에만 매몰되지 않고 개발자로서 비개발자와 소통하는 능력을 기를 기회를 얻을 수 있었다. 처음에는 많이 미숙했지만, 그래도 뭔가 이전보다는 점점 소통이 원활해지고 있는 것 같은 기분이 든다.
5. 앞으로도 꾸준히 살아야지
지나온 시간을 돌이켜 생각해 봤을 때, 나는 욕심을 내면 성과가 좋지 않았고 반대로 그냥 꾸준히 하면 결말이 좋은 편이었다. 그래서 개발자로 전향한 이후부터는 내 내면의 피드백을 반영해서 욕심 부리지 않고 꾸준히 할 수 있는 것을 하면서 사는 중이다. 지금까지는 꽤 잘 해온 것 같다고 생각이 든다. 앞으로도 욕심 부리지 않고 뮤팟에서 꾸준히 성장하면서 나아가야지.