퇴사 회고
카카오 엔터프라이즈에서의 3년 여정을 마쳤습니다.
퇴사할때마다 느끼는 거지만 전 시원섭섭보단 그냥 속이 시원한 느낌입니다. 그래도 제 나름대로 최선을 다해왔기 때문이 아닐까 싶습니다.
누군가는 퇴사를 졸업이라고 표현하던데 감성적으로 나쁘지 않은 표현인것 같습니다. 나쁘지 않은 표현이지만 맞는 표현이라고 생각하진 않습니다. 직원으로써 회사는 나와 비즈니스 파트너의 관계일 뿐이지 교육기관이나 공동체란 느낌은 아니니까요. 그동안 공동의 이익을 위해 서로가 최선을 다했지만 더이상 공동의 이익을 추구할 수 없을 때 갈라서게 되는 그런 관계라고 할까요.
그렇더라도 이 회사에서 많은걸 배운건 틀림없습니다. 값진 경험들과 교훈들을 얻었고, 같은 상황에 대해서 다음엔 어떻게 행동할지에 대해 많이 고민해볼 수 있게 되었어요.
Team Building
먼저 처음 회사에 들어오자마자 훌륭한 팀을 만나 참 다행이라고 생각합니다. 좋은 팀은 모두가 적절한 역할을 맡으면서도 한두명의 Key Player가 있어주는게 이상적인 것을 느꼈습니다. 주니어 개발자로써는 팀에 ‘저 사람을 뛰어넘고 싶다’라는 질투와 동경을 갖게 하는 팀원과 ‘저 사람이 하는 모든것을 배우고 따라해야겠다’라는 롤모델이 있다는게 참 행운이라는 것을 알게됐습니다.
그리고 그런 이상적인 환경이 얼마나 빠르게 외부요인 만으로 사라질수 있는가를 깨달았습니다. 덕분에 그런 환경의 소중함을 알게 되었고, 이런 시기가 다시 오게 된다면 어떻게 유지해야 할까에 대해서 고민해볼 수 있게 되었습니다(다만 아직 답은 못찾았어요).
팀 빌딩에서 한가지 흥미로웠던 에피소드가 있었는데, 코로나가 터지고 한동안 팀에서 강제로 재택근무를 하다가, 어느날 간만에 팀원들이 같이 출근하는 날이 있었습니다. 그 날 일부 팀원들이 점심시간에 모여서 보드게임을 하게 되었어요. 그렇게 한두번 평범하게 보드게임을 했고 그 외에 특별한 부분은 없었습니다. 그런데 그 이후로 희한하게 팀원들을 더 잘 이해하게 되고 신뢰가 생긴것 같다는 생각이 들었습니다. 사실 시간으로 따지면 업무시간에 종종 모여서 티타임을 가진 시간이 훨씬 많은데, 그렇게 보드게임을 한 것보다 더 팀원들과 관계를 돈독하게 다진것 같은 시간은 없었습니다. 물론 저만의 느낌일 수 있지만, 적어도 팀 빌딩에서 어떤 액션이 더 효율적인가에 대해 생각해보게 되었습니다. 티타임이 과연 팀 빌딩에 도움이 되는걸까요? 이런 의문도 가지게 되었고요.
Self-reflection on abilities
번아웃이 올 정도로 개발에 몰두해본 경험도 소중한 경험이었습니다. 경쟁심과 모두에게 내 능력을 입증하고 싶다는 마음이 저를 한 때 몰아붙였습니다. 덕분에 정말 한동안 미친듯이 밤낮으로 일하고 하루종일 코드만 생각했었어요. 물론 지나고 나서 보면 사소한 문제에 시간을 과하게 쓴 부분이 있었습니다만, 한번이라도 이런 경험을 해봐야 다음엔 어느 강도로 어떻게 일해야 나에게 맞는지를 조금 알게되는것 같습니다.
결국 그런 경험을 통해 깨닫게 된 것은 주변 팀원들을 더 의지하고 시너지를 낼 수 있게 서로 신뢰를 쌓아야 된다는 것이었습니다. 저 자신이 뛰어난 개발자도 아닐 뿐더러, 내가 아무리 잘하는 부분도 서포트를 받으면 더 효율적으로 일을 해낼 수 있었습니다. 하지만 반대로 말하면 혼자서 과몰입을 해야 이런것도 깨달을 수 있었던 것이었어요. 처음부터 마이크로 매니징되는 팀에 있었다면 오히려 팀에 방해를 받는다고 느낄수도 있을것 같습니다.
Elixir
엘릭서는 단연코 제가 이 회사에서 얻은 가장 큰 보물입니다.
아직 주니어 개발자 시기에 이 언어를 배운건 정말 행운이라고 생각합니다. 요즘 대부분의 메인스트림 언어들은 멀티 패러다임을 적용하고 있기에, 오히려 함수형으로만 코드를 작성할 수 있는 언어를 접하기가 힘듭니다. 이전에 코틀린으로 함수형을 익혀보려고 했을 때, 객체지향과 함수형이 머릿속에서 충돌하면서 둘다 제대로 체득하기가 쉽지 않다는것을 느꼈었습니다. 태생이 함수형이라 불변형 자료구조를 강제하고 패턴 매칭이 모든 코드의 기본이 되는 엘릭서는, 그럼에도 쉬운 문법과 동적 타이핑으로 파이썬처럼 초기 진입장벽을 낮춰주어 함수형 언어 공부의 첫 주춧돌로써 매우 좋은 언어였습니다.
덕분에 당장의 커리어패스가 좀 좁아지긴 했는데, 힘들더라도 당분간은 엘릭서를 갈고닦고자 합니다. 프로그래밍 언어는 도구일 뿐이지만 저의 코드 설계의 틀을 잡아줄 메인 언어에 대한 전문성은 있어야 된다고 생각하기 때문입니다. 물론 다른 언어에 대한 공부도 게을리 하지 않아야겠죠. 필요한곳에 적절한 도구를 쓰는게 저의 실용주의니까요.
한가지 더 중요한 깨달음은 마이너 언어를 팀에서 사용할 때는 그것을 이끌어준 기술 리더의 존재가 매우 크다는 것입니다. 팀에서 마이너한 기술 스택을 사용하는데 그것을 이끌던 기술 리더가 이탈하고 다음 리더가 그것을 제대로 인계받지 못한다면 곧 그 팀은 사실상 동력을 잃어버릴 가능성이 매우 큰 것 같습니다. 자신들이 사용하는 기술에 대한 이해도가 점점 떨어지기만 하는 팀이 제대로 유지될리가 없겠지요.
개인적인 아쉬운 점
배운것들이 많은 만큼 후회되는 것들도 많았습니다. 후회되는 것들은 그 때 더 나은 선택을 할 수 있지 않았을까, 더 노력하고 최선을 다해볼 수 있지 않았을까 하는 것들입니다.
예를 들면 회사일에 바쁘다는 핑계로 개발자 커뮤니티에 더 기여하지 못했습니다. 받은만큼 돌려줄 수 있어야 했는데, 오픈소스의 이점을 누리기만 했다는 죄책감이 듭니다. 앞으로는 작게라도 기여해보면서 점점 익숙해지려고 합니다.
앞으로의 계획
이제 저는 주니어 개발자에서 시니어 개발자로 가는 중요한 길목에 있다고 느끼고 있습니다. 많은 이들이 준비되지 않은상태로 갑작스럽게 시니어 개발자의 역할을 맡아버리곤 하는데, 저는 뜻밖에 주어진 지금의 소중한 시간에 지금까지 쌓아온 지식을 최대한 갈무리하고, 제가 자신있다고 생각하는것들을 남들도 인정해줄 수 있도록 더 뽐내고 드러내는 연습을 해야겠다고 생각합니다.
또한 개발자로써의 조직력과 어떻게 하면 더 팀으로 효율적으로 일할수 있는지와 성과를 만들어낼 수 있는지를 미리 생각해두고 기회가 왔을 때 준비된 상태로 실전에 임할 수 있게 칼을 갈고 있을 예정입니다.
마지막으로 저의 꿈과도 관련이 있지만, 언제든 해외로 나갈 수 있도록 만반의 준비를 해두고 있어야겠습니다.
마치며
카카오 엔터프라이즈에서의 여정을 마무리하며, 업무적으로나 개인적으로나 저를 성장시켜준 풍부한 경험에 감사하는 마음이 있습니다. 비록 회사를 떠났지만 제가 배운 교훈은 제 커리어의 다음 단계로 이어갈 귀중한 자산이 될 것입니다.
이제 다음 단계로 나아가면서 저는 기대감과 설렘을 느끼며 그동안 얻은 지혜를 적용하고 싶고, 앞으로 어떤 새로운 도전과 기회가 있을지 궁금합니다.