개발 회고

퇴사를 준비하며 지난 4년 회고 :: 마이구미

mygumi 2024. 3. 18. 16:50
반응형
본인은 9년차 평범한 프론트엔드 개발자이다.
무언가를 이룬 것도 내세울만한 것도 없고, 그러니 누군가에게 조언을 해줄 상황도 아니다.
게다가 각자 추구하는 방향이 다르고, 각자 가치관이 다르고, 각자 처해진 상황이 다르다는 것은 너무 잘 알고 있다.
그러니 오해가 없길...
그냥 스스로 지난 4년간 느꼈던 것들, 생각이 변한 것들... 그러한 것들을 나를 한번 돌아보고 정리해보고자한다.
뭐 물론... 새로운 경험을 통해 지금의 생각도 또 변할 수 있을 것이다.

 

야놀자를 다닌지 어느덧 4년이란 지났다.

이제 야놀자를 떠나 새로운 출발을 해보려고한다.

 

야놀자 입사전의 나는 첫 직장부터 스타트업을 시작으로 4년간 여러 스타트업에서 일을 했다.

그러다가 스타트업에 비해서는 더 큰 규모를 가진 야놀자로 이직을 했다.

 

그 시절 나에게는 팀 구성, 회사 규모면에서만 봐도 정말 큰 변화였다.

지금까지는 사실 혼자 일을 했다면, 야놀자는 처음으로 프론트엔드만으로 구성된 팀에서 일하는 것이였다.

그리고 규모도 100명이 안되는 스타트업에서만 일을 하다가 1000명이 넘는 회사에서 일을 하게 된 것이다.

 

 

이러한 변화는 나에게 많은 경험을 가져다주었다.

그동안 있었던 지난 4년간의 경험을 남겨보려고한다.

 

  • 프론트엔드에 집중할 수 있어요. 그런데 선택적 집중이 될 수도...
  • 주어진 환경에 적응하면 나태해질 수 있어요
  • 기술적인 개선보다는 운영 이슈를 해결해봐요
  • Yes 빈도수와 기술 역량은 비례하지 않아요
  • 히스토리를 아는 사람은 없어요
  • 프로젝트 진행이 탄탄대로 진행되는 건, 상상 속의 이야기에요
  • 작업물은 계속 변해요
  • 어떠한 작업이든 진행상황은 공유해야해요
  • 업무 도구를 적극적으로 활용해야해요
  • 코드리뷰 문화는 선택이 아니라, 필수에요
  • 담당 서비스는 나만의 놀이터가 아니에요
  • 새로운 시도는 유지보수를 생각해야해요
  • 주위에는 이미 각 분야의 전문가들이 배치되어있어요
  • 가끔이라도 존재를 드러내야해요
  • 다른 사람과 일주일 뒤의 나를 위해 습관화해야해요
  • 평가를 위한 준비를 해야해요
  • 이직이 유일한 해결책은 아니에요

 


 

프론트엔드에 집중할 수 있어요. 그런데 선택적 집중이 될 수도...

스타트업에서는 프론트엔드에 대해 깊게 파고들고 싶었지만, 상황이 여의치 않아서 아쉬움이 있었다.

야놀자에서는 프론트엔드 외의 작업은 다른 동료나 다른 부서의 역할이라는 것이 명확하게 분리되어있었기에, 프론트엔드만 집중할 수 있었다.

처음에는 좋았지만, 시간이 지날수록 단점이 더 많다는 것을 더 느꼈다.

나의 업무가 아닌 영역에 대해서는 선을 긋게 되었고, 학습 범위 또한 좁아지게 되었다.

 

다른 선택지들도 있겠지만, 프론트엔드에 대한 집중보다는 역할의 범위를 넓히는 것을 택하였다.

예를 들어, 야놀자의 인프라 구성, 담당 서비스의 DB 구조 등을 이해하기 위해 노력했다.

 

주어진 환경에 적응하면 나태해질 수 있어요

야놀자는 각자의 업무 영역도 정해져있고 내부 업무 프로세스도 정착되어있다.

스타트업과는 달리 각자 주어진 업무에 집중하는 분위기에 가깝고, 다양한 시도를 위해서는 절차 및 상황의 어려움이 있을 수 있다.

이러한 분위기에 적응을 하다보면, 점점 스며들다가 나태해질 수 있다.

 

본인도 점점 나태해지고 있다는 것을 느꼈었다.

개인적으로는 개인 공부보다는 업무에서 얻는 즐거움과 지식을 더 좋아했기 때문에 담당 업무 이외의 시스템 개선건들을 탐색하고 연구하여 극복하고자했다.

 

기술적인 개선보다는 운영 이슈를 해결해봐요

기술 개선은 너무나 많은 리소스가 소모되고, 득일거라는 보장을 할 수 없다.

반대로 현재 발생하고 있는 운영 이슈는 이미 모두가 개선을 원하는 작업으로 결과적으로는 득이 될 수 있다.

기술 개선은 개발자 사이에서 좋은 평가를 받을 수 있지만, 운영 개선은 더 나아가 다른 포지션의 동료들에게도 좋은 평가를 받을 수 있다.

그 한번의 성과로 많은 것들이 변할 것이다.

 

Yes 빈도수와 기술 역량은 비례하지 않아요

지난 스타트업에서의 경험은 기획, 디자인쪽에서 원하는 요구사항을 대부분 들어주곤했다.

혹시 다른 누군가 주어진 요구사항들을 거절하는 모습을 보면, 역량 부족이라고 생각하곤했다.

즉, 요구사항의 난이도와 공수만으로 판단하고 YES 를 외쳤던 것이다.

 

하지만 일관성이 없는 기능, 과도한 기능, 불필요한 기능들은 시스템을 더 복잡하게 만드는 것을 알게 되었다.

무분별하게 구현된 기능들은 시스템 규모가 커질수록 기하급수적으로 예기치 못한 이슈들을 만든다.

 

히스토리를 아는 사람은 없어요

시스템은 갈수록 복잡해지고 있고, 수많은 사람들의 손을 거치고 여기까지 왔다.

아무리 이해할 수 없는 코드나 기능이라도 그 이유는 존재한다.

섣불리 추측하고 진행하면 예기치 못한 이슈를 초래할 수 있다.

 

우리가 히스토리 파악을 위해 가장 먼저 할 수 있는 일은 무엇인가?

커밋 메시지를 통해 변경점을 확인하고, 연결된 티켓, PR, 문서들을 추적하는 것이다.

그렇다. 지금 내가 하고 있는 작업에 대한 내용이 다른 누군가가 추적하여 파악할 수 있게 신경써야한다.

 

프로젝트 진행이 탄탄대로 진행되는 건, 상상 속의 이야기에요

언제든 지금 진행하고 있는 프로젝트가 중단될 수 있다고 생각해야한다.

열심히 진행하고 있다가 갑자기 프로젝트가 없어지게 되면, 많은 현타가 올 수 있다.

 

모든 작업을 기록하고 공유하면서 완전히 본인의 것으로 만들어야한다.

결과물이 성과로 이어지는 것이 아닌 매 작업 과정이 성과로 이어질 수 있도록 해야한다.

 

작업물은 계속 변해요

기획, 디자인은 끊임없이 변할 것이다.

  • 다른 부서에 의해서 변한다.
  • 담당자에 따라 변한다.
  • 경영진 의사결정에 따라 변한다.
  • 우선순위 변동에 따라 변한다.
  • 시스템에 의해 변한다.
  • 무슨 일이 있든 변한다.

하지만 도메인, 프로젝트 진행 사유와 목적 같은 본질은 변하지 않는다.

변화하는 상황에 빠르게 대처하기 위해서는 정확한 도메인 파악과 이해가 필요하다.

 

어떠한 작업이든 진행 상황은 공유해야해요

큰 규모의 조직 구성에서 무슨 작업을 하든 많은 부서와 엮여있다.

그래서 공유를 하게 되면, 시작하기도 전에 많은 제한을 받을 수 있다.

점점 병목이라고 느끼게 된다면, "선작업 후공유" 방식으로 변할 수 있다.

이러한 방식은 서로에 대한 신뢰도 하락과 감정의 골만 깊어질 수 있기에 조심해야한다.

어찌됐든, 공유는 실보다 득이 많다.

 

업무 도구를 적극적으로 활용해야해요

스타트업에서 일할때는 사실 해야할일, 진행하고 있는 일, 완료된 일 등을 티켓화하고, 스프린트와 같은 방식으로 일하는 것들을 이해할 수 없었다.

"그 시간에 작업을 하나 더 하는게 낫다" 라는 마인드를 가지고 있었다.

간단하게 말하면, 과정보다는 결과물에 집중했다.

 

하지만 아무리 작은 작업이라도 수많은 연결고리와 히스토리가 존재하는 것을 볼 수 있었다.

그리고 각자의 주어진 역할과 범위가 너무나도 다르다는 것을 인지하게 되었다.

이것을 이해하고나니 왜 컨플, 지라와 같은 제품들을 써야하고 스크럼, 스프린트, 회고 등과 같은 프로세스의 존재 유무를 알게 되었다.

 

코드리뷰 문화는 선택이 아니라, 필수에요

프론트엔드로 구성된 팀에 소속하게 되면, 많은 것들을 공유하고 성장할 줄 알았다.

하지만 각자가 맡은 업무를 진행하다보니, 소통할 일이 그렇게 많지는 않았다.

이러한 상황에서 코드리뷰 문화는 소통의 창구가 되어주었다.

 

담당 서비스는 나만의 놀이터가 아니에요

스타트업에서는 최신 기술, 트랜드를 쫓아가곤 했다.

본인의 작업물은 매번 이전과는 다른 방식으로 구현한 모습을 흔하게 볼 수 있었다.

이건 지금까지는 협업이란 것을 경험하지 않았다는 것을 증명하는 것이었다.

여러 사람이 협업해야하는 코드들은 모두가 협의된 방식이나 일관성 있고 빠르게 이해할 수 있는 코드여야한다.

 

새로운 시도는 유지보수를 생각해야해요

프론트엔드는 아직까지 계속 변화하고 있다.

실험적으로 작거나 새로운 프로젝트에는 새로운 기술 스택 시도해볼 수 있다.

하지만 다른 누군가에게는 새로운 학습이 필요하다는 것을 생각해야한다.

실무적으로 관리해야하는 기술 스택이 늘어난다는 것은 부담이 크다는 건 가장 큰 리스크이다.

 

주위에는 이미 각 분야의 전문가들이 배치되어있어요

각자 주어진 역할이 명확하게 구분되어있는 구조이다.

이것이 의미하는 것이 무엇일까? 이미 그 분야에서는 검증된 전문가라는 것이다.

질문을 하는 것이 조금 어색하고, 민폐라고 생각하지말고 물어보자.

돈주고도 못사는 엄청난 지식을 습득할 수 있는 기회가 될 것이다.

 

가끔이라도 존재를 드러내야해요

외부에 모습을 드러내지않고, 속한 조직에서 묵묵히 일을 하는 것이 나쁘다는게 아니다.

하지만 너무 익숙해진다면, 잘못 알고 있는 내용으로 답변하는게 두려워지거나 커뮤니케이션 능력의 부재가 커질 수 있다.

가끔씩이라도 외부에서 인입된 질문에 대해 답변하고, 다른 포지션과 적극적으로 소통을 하는 것이 여러모로 좋다.

 

다른 사람과 일주일 뒤의 나를 위해 습관화해야해요

  • 작업 단위를 쪼개서 각각을 커밋 단위로 기록하는 것
  • 작업에 대한 내용을 티켓에 남겨놓는 것
  • 티켓과 연관있는 링크들을 연결시켜놓는 것
  • PR 를 올릴때 다른 사람이 이해하기 쉽게 설명하는 것
  • PR 코멘트를 자주 많이 남기는 것
  • 필요하다면, 문서를 작성해놓는 것
  • 그냥 뭐든 기록하는 것 (수많은 기록은 다양한 이슈를 초래할 수 있지만, 없는 것보다 낫다)

우리가 적은 리소스로 할 수 있는 것들은 너무나 많다.

투자 대비 가성비가 너무 좋다.

이러한 습관들은 엄청난 자산으로 남게 된다.

 

평가를 위한 준비를 해야해요

스타트업에서는 평가 받기도 쉬웠고, 누군가를 평가하기도 쉬웠다.

하지만 규모가 있는 서비스와 조직에서는 달랐다.

작든 크든 모든 작업에는 많은 구성원들이 엮여있다.

즉, 스스로 증명하지 않으면 아무도 나의 성과를 알 수가 없다.

 

평가를 위해 무언가를 준비한다는 것이 자체가 마음에 들지 않을 수 있다.

모든 과정을 기록하는 것은 평가를 떠나서 본인과 동료를 위해 꼭 필요한 작업이다.

그것을 그대로 평가에서도 활용하면 되는 것이다.

 

이직이 유일한 해결책은 아니에요

야놀자 입사 1년이 되었을 무렵, 퇴사를 결심했었다.

하지만 이대로 나가면 너무 억울하고 스스로 떳떳하지 못할 것 같았다.

나는 야놀자에 대해서 아는 게 없었고, 누구에게도 야놀자에 대해 말할 수 있는게 아무것도 없었다.

스스로도 야놀자에서 일을 했다는 생각조차도 들지 않았다.

 

퇴사가 아닌, 전배(부서 이동)를 요청했고 새로운 부서에서 야놀자 생활을 지속할 수 있게 되었다.

전배를 통해 스스로를 증명하면서 더 많은 것들을 경험하고 배울 수 있는 계기가 되었다.

주위 시선을 신경쓰지 않고, 조금 더 빨리 용기를 냈어야했다는 아쉬움말고는 야놀자에서 가장 잘한 행동이라고 지금도 생각하고 있다.

 


 

다시 한번 전달하자면, 이건 본인의 기준으로 작성한 것이다...

 

얻은 것도 많고, 잃은 것도 많다.

그래도 어떤 선택을 했든, 달라지지는 않았을 것이다.

 

어떤 고난과 시련이 올지 모르지만... 

지난 경험의 내공을 통해 더 나은 선택과 방향으로 이어질 수 있도록. 

반응형