항상 새해가 되면 생각한다. 나는 무엇을 위해 일하며, 어떤 목적으로 이 회사에 입사했고(혹은 이일을 하며), 그간 어디까지 해냈고, 현재 어디까지 달성했는지를.
처음 이직할 때의 그 시절이 생생하다. 개인적으로 조직생활을 오래 하지 않은 탓에 조직에 대한 기대도 같은 건 거의 없다. 반면 내가 무엇을 할 수 있는지에 대한 관심은 매우 높은 편이다. 처음 이직 제안을 받았을 때도 생각했던 건 왜 가야 하는지, 왜 이곳이어야 하는지 였다. 어찌 됐든 내겐 정복해야 할 산이 있었고, 지금도 오르는 중이다. 이번 회고록은 나의 목표와 방향성, 그리고 미래를 위한 이야기다.
- 첫 발을 땐 데이터 분석 인프라 구축
처음 이 회사에 올 때 생각한 목표가 몇 개 있다. 서비스 안정화, 자동화, 그리고 데이터 분석 시스템 구축하는 것이었다. 1번과 2번은 그럭저럭 달성했다. CI/CD구축, AWS로 이관, 분산화 등 다양한 아키텍처 설계 및 적용, 실험과 학습을 통해 지금의 서비스는 2년 전에 비해 성능 퍼포먼스로 보면 3배 이상, 장애율 1% 미만으로 줄었다.
이제 정말 때가 왔다고 생각했지만 막상 실행으로 옮기는데 시간이 걸렸다. 간단하게는 예산의 문제, 인력의 문제였고, 설계의 문제도 있었다. 필요한 건 알겠는데 어떻게 시작해야 하지? 누구에게 물어봐야 하지? 등 이런 생각들이 나의 머릿속을 헤집고 다녔다. 그러다 문득 생각이 났다. 이렇게 미루기만 해선 아무것도 할 수 없을 거란 걸.
사람이 적은 만큼 효율적인 툴들을 찾아야 했다. 이쯤 돼서 내게 중요한 건 잘하는 것, 올바른 것을 찾는 게 아니었다. 일단 되는 걸 먼저 찾고 얽히듯이 하나씩 묶어나가야겠단 생각이 들었다. 기술을 잘못 선택했다 하더라도 내가 기깔차게 잘 쓰면 된다고 생각했고, 망설일 시간이 어떻게 완성시킬지만 고민하기로 했다. 이후 상사에게 통보하듯 '이거 할 거예요' 라고 던졌다. 다행히 예산은 이미 예전부터 계속해달라고 조른 것이 있어서 진즉 통과된 상태다. 그렇기 시작을 했고, 곳곳에 흩어진 데이터를 수집하기 시작했다.
처음 물꼬를 트는 게 힘들지, 틀고 나면 어떻게든 된다고 했던가? 물꼬를 트고 한 달 뒤, 지금까지 한 것을 최초로 적용할 작은 프로젝트가 생겼다. 2시간에 한 번씩 현 매출에 대해 비교 & 분석한 뒤 관계자에게 메일로 전송하는 것. 사실 이 정도 시스템은 예전 것에 조금 덧씌우면 어떻게든 할 수 있는 것이다. 하지만 기존 인프라에 의존성을 싹둑 자르고 싶었던 나는 지금까지의 인프라를 바탕으로 새롭게 만들기 시작했다. 요구사항이 간단한 만큼 며칠 만에 뚝딱 만들어졌다. 이 시스템 덕분에 누군가는 주말에 일을 하지 않아도 괜찮아졌다.
물꼬를 틀기 시작하니 상사가 다른 눈으로 바라보기 시작했다. 긴가민가 한 것을 이게 되나?라는 시점으로 옮겨진 듯하다. 어찌 됐든 간에 나는 그것을 사용할 수 있을지 없을지 모르지만 착실히 데이터를 수집했다. 그렇게 모으던 어느 날, 또 새로운 간이 프로젝트가 생겼다. 그것은 좀 지지부진하게 이어지다 완료했는데, 내가 볼 땐 담당자가 적극 참여해야 할 거 같은데 하다 말다 하는 모습이 보였다. 그런 거 하나하나에 신경 쓰면서 안 할 내가 아니기에 어떻게든 내 나름 결과물을 만들어 냈고, 그 시스템 역시도 여전히 잘 쓰이고 있다
그러나 아직까지도 이렇다할 성과라 말하기엔 힘들었다. 그래서 이제는 정말 새로운 시스템에서만 가능한 것들을 분석해보고자 했다. 그리고 최초로 회사에는 없는 지표를 뽑아내기 시작했다. 이전 시스템 구조에선 불가능한 것들이 새로운 환경이라 가능해졌다.
그러나 여전히 의사결정자들이 보기에는 미미한 수치일지 모르겠다. 하지만 이런것들이 쌓이고 축적되야 마침내 큰 결과물이 온다는걸 안다. 그리고 내 머릿속엔 딱 하나의 목표가 있다. 언젠가 그들의 머리를 망치로 때릴 정도의 임팩트를 주겠노라고. 목표는 6개월 이내. 여전히, 그리고 앞으로도 회사에서 이렇다 할 지원은 없다. 처음과 상황은 같지만 여전히 나는 내 시간을 내서 이것들을 만들고 있다. 난 원래 이런 놈이니까. 그들의 멍해지는 표정을 보는 게 올해 내 목표다.
- CS 0건에 도전한다
처음 이 회사에 왔을 때 CS게시판엔 매일 적게는 5개, 많게는 20개 정도의 수정 요청 글이 올라왔다. 시스템이 보다 완전했다면 하지 않아도 될 일을, 고객들의 불편을 시스템이 만들어내고 있었다. 그것을 고치는데 꼬박 1년이 걸렸다. 다행히 이후 하루에 1~3개 건 정도로 줄였다. 0건인 날도 있었다. 이 정도면 일단 일단락 한 샘치고 한동안 신경 쓰지 않고 있었다.
그러나 하루에 1~2건이라 해도 올라오는 것을 신경 쓰이지 않을 순 없었다. 그럼에도 이것을 잡지 못한 건 구조적 문제이기 때문이다. 시스템에 민감한 이슈라 신중할 수밖에 없었다. 만약 실수하면 복구하기가 여간 까다롭다. 게다가 이미 얽혀있는 시스템이 많아 함부로 시작할 수도 없는 노릇이었다. 하지만 이대로 계속 놔둔다면 CS건은 계속 발생할거고, 서비스를 이용하는 고객의 불만은 브랜드에 대한 실망으로 이어질 거라 생각했다.
어찌 됐든 해야만 했다. 왜냐하면 이전에 1~2건의 요청이 사용량이 늘어나면서 2~3배가량 늘었기 때문이다. 즉 서비스가 잘되면 잘될수록, 커지면 커질수록 문제의 빈도가 더 많아지고 또 담당자들이 힘들어질 것이 눈에 보였기 때문이다. 그래서 결심하고 시스템 개편에 들어갔다.
이렇게 거창하게 쓴 거 치고 수정하는 시간은 그리 길지 않았다. 이미 그 문제에 대해서는 몇 개월간 모니터링한 것이 있었으며 ‘만약 내가 고친다면…’이라는 시뮬레이션을 머릿속에 몇 번이나 돌려놨기 때문이다. 그래서 시기가 왔다고 생각했을 때 생각해둔 가장 좋은 방법을 선택해 적용했다. 그리고 테스트를 꼼꼼히 해야 한다고 담당자에게 전달했다. 나 역시도 테스트를 꼼꼼하게 했다.
그리고 마침내 수정한 것을 적용했다. 그리고 며칠 동안 CS게시판이 조용하다. 지금은 하루에 1건도 안 올라오는 거 같다. CS담당자분들에게는 말하지 않았지만 그들도 눈치채지 않았을까 하는 생각이 든다. 어찌 됐든 누군가에게 도움이 되는 시스템을 만드는 것, 고치는 것만큼 즐거운 건 없는거 같다.
- 스타트업과 개발, 학습에 대해
나는 개발자다. 그런데 내가 할 줄 아는 것을 쭉 나열해보면 꽤나 다양하다. 사실 이걸 나는 잘 몰랐는데, 어쩌다가 스타트업의 사람들과 미팅을 하면서 도움을 줄일 이 생겨 이런저런 이야기하다 '이런 거 할 인력 있어요? 안되면 제가 할게요' 라는 말을 몇 번이나 하게 되었다. 내가 하는 방법이 최고, 완벽한 것은 아니겠지만 적어도 그 사람들이 필요로 하는 것들의 대부분을 커버할 수 있었다. 미팅 내내 ‘이런 것도 하세요?’라는 말을 많이 들었다.
큰 기업에 갈수록 하나만 잘하면 된다는 말을 듣는다. 큰 기업은 인력이 다양하게 있기 때문에 문제가 생기면 관련 담당자, 전문가에게 요청할 수 있다. 인재풀을 항상 갖고 있는 것은 큰 기업의 장점이자 매력이다. 그러나 작은 기업은 그런 것은 고사하고 나가는 사람 붙잡는것도 힘든게 현실이다.
대기업은 누구나 가고 싶어 하기 때문에 좋은 인재가 많이 몰린다. 반대로 작은 기업, 스타트업은 좋은 인재를 찾는 게 힘들다. 그런데 일이라는 게 최소한도로 되야하는 것들이 많다 보니 항상 인재난, 기술난에 허덕인다. 이 상황을 대충 어떻게 해결하면 될지 알겠는데(인터넷에 있으니까) 그래서 누가 그것을 수행할 수 있는가에 대해 매번 막히는 것이다. 학습하자니 시간도 오래걸린다. 사전지식이 없기 때문이다. 이렇게 하나하나 뜯어보면 시스템을 하나 만든다는것이 굉장히 복잡한 거구나 라는걸 깨닫는다.
지식을 깊게 아는 것과 넓게 아는 것. 사실 이 두 문제는 풀리지 않는 숙제와 같다. 그래도 이 문제를 누군가 내게 물어본다면 이제는 조금 확실하게 말할 수 있을 거 같다. 상황에 따라 우선되는 게 다르다 라고. 스타트업같이 깊이보다는 얇게라도 두루 해내야 할게 많은 곳은 넓게 아는 것이 중요하다. 네이버나 카카오같이 한 서비스에 대한 깊은 이해를 필요로 하는 곳에서는 깊게 아는 것이 중요하다. 그리고 이 두 개의 저울질은 사내 어떤 프로젝트에 어떤 일을 맡느냐에 따라 또 달라진다. 정말 상황에 따라 달라진다는 것이다.
가끔 그런 글을 본다. 개발자가 이것도 모르면 개발자라고 말할 수 있는가 라는. 예전이라면 그런 말에 공감했겠지만 요즘은 아니다. 검색엔진을 개발하는 회사에 사람은 검색엔진 개발에 필요한 다양한 스킬을 배웠을 것이다. 하지만 검색엔진을 개발한다고 해서 앱 만드는 기술이 뛰어나지는 것은 아니다. 운영체제, 클라우드, 네트워크에 대해 잘 안다고 말할 수도 없을 것이다. 나는 이제 그리 말하는 그들에게 이렇게 물어볼 수 있을 거 같다. 그럼 당신은 자본주의에 살고 있으면서 자본에 대해 얼마나 알고 있습니까? 민주주의는요? 지금 미국과 중국, 한국과의 관계는요? 7080 시대의 한국, 조선시대의 한국에 대해서는 얼마나 아세요?라고.
그럼에도 불구하고 당연히 알아야 하는 것들이 있다. 그러나 그런 기준도 내가 속한 회사, 내가 속한 조직에 따라간다고 생각한다. 실전에서 쓰지도 못할 기술은 아무리 열심히 익힌다고 해도 도움이 되는 일은 거의 없다. 대부분 자기만족 선에서 끝난다. 원론을 배우면 기본기가 탄탄해지기는 하겠지만 그렇다고 반드시 응용을 잘할 수 있다는 건 아니다. 때로는 자기가 하던 것을 더 잘하게 되면서 기본기가 탄탄해지는 과정도 있다.
환경에 따라 학습하는것이 다를 수 있다는 것을 인정한 후 어느순간부터 나는 그런 이상한 언어폭력은 그만하게 되었다(하지만 자기가 맡은 것에 대해 제대로 알지 못하고, 또 알아보려 노력하지 않는 건 나쁘단 생각은 여전하다). 그런 말을 할 시간에 어떻게 하면 그들을 도울 수 있는지 생각하는 것이 훨씬 건설적이다. 비평은 누구나 할 수 있다. 그것을 개선하는 사람은 소수다. 그 방향으로 사람을 이끄는게 중요하지 모른다고 비난하는건 의미없는 행동, 더 나아가 적을 만드는 길이라 생각했다.
2021년이 되었다. 새해로 넘어오면서 적지않은 프로젝트를 마감했고, 당분간 다른 공부에 집중하려 했다. 그러다가 최근 어떤 제안이 들어왔는데, 처음엔 그걸 거절할까 싶었다. 굉장히 빡빡한 일정이면서 준비되있는건 거의 없는 수준의 제안을 받았기 때문이다. 다른 할것도 정해놓은 상태라 도저히 일정이 나오지 않을것 같아 거절할까 하다가 결국 그 프로젝트를 수락했다. 지인에게 보면 미쳤다는 프로젝트다. 심지어 그걸 의뢰한 다른 직원들도 모두 놀라했다.
수락한 이유는 간단했다. 누구나 다 할 수 있는 프로젝트, 여건이 갖춰져 있는 프로젝트, 시간이 넉넉해서 누구나 해낼 수 있는 것이 아니기 때문이다. 이것을 해내기 위해선 보다 시간관리를 체계적으로 짜고, 일정에 문제 없을 정도로 자기관리를 꾸준히 하고, 긴박하고 급변하는 환경속에서 유연함을 갖는 방법을 배우겠단 개인적인 목표가 ㅇ있었기 때문이다. 자기 파괴와 혁신을 해보고 싶었던거 같다. 아직은 갈아넣어도 괜찮은 나이라고 다독이며.