개발자로서 처음으로 취직했던 회사에서 백엔드 면접을 보고 안드로이드 개발을 맡게 된 포지션 사기(?)를 경험한 뒤로 나에게는 계속 서버 개발에 대한 갈증이 있었다. 그래서 어느정도 회사 일이 익숙해진 뒤에는 새벽시간에 일어나 출근하기 전, 두 시간을 백엔드 개발에 대해 공부를 하기도 했다. 하지만, 여가시간에 공부하는 것들이 실제로 회사에서의 내 업무에는 전혀 도움이 되지 않다고 느껴질 때마다, 너무 고통스러웠다.
“지금 이것을 공부할 시간에 안드로이드를 조금 더 공부하는 것이 맞지 않을까”
“첫 포지션을 안드로이드로 시작했으니, 나는 앞으로 안드로이드 개발자로서만 커리어를 쌓아야 하는 것일까”
“실제 업무에서 백엔드 개발을 한다는 것은 어떤 기분일까”
개인적인 공부 내용이 당장의 현업에 도움이 되지 않았기 때문에, 꾸준하게 공부하는 것에도 어려움이 자주 찾아왔다. 그리고 무엇보다도 지금 다니는 회사에서는 백엔드 업무를 하고 싶지 않았다. 외주 개발을 통해 받아온 코드를 수정해서 커스텀한 코드를 쓰고 있는 상태였어서, 레거시가 매우 많았고, 사람들의 돈과 관련된 시스템이다보니, 쉽게 이것저것 건드리고 고칠 수도 없었다.
결국, 이곳에서는 계속 있어도 내가 하고 싶은 일을 할 수 없겠다고 생각이 되어, 입사 후 7개월 정도가 지났을 때, 나는 이사님에게 조심스럽게 퇴사 의사를 밝혔다. 당시 상황도 굉장히 웃겼던 것이, 우리 팀 동료 중 한 분이 코로나에 걸려서 팀 전체가 14일동안 재택근무를 하고 있을 때였다. 작디 작은 내방에서 홀로 고립되어 깊게 나의 상황을 되돌아보고 생각할 시간이 많아지니, 결론이 퇴사로 치닫았던 것 같다. 나를 적극 추천해서 뽑아주신 이사님께 대못을 박고(?) 코로나 격리가 끝나면 오피스 출근하여 면담을 진행하기로 했다.
퇴사이유 중 가장 큰 것은 백엔드 개발에 대한 갈증이었기 때문에, 퇴사의 이유에 대해서 이사님이 여쭤봐주셨을 때는 솔직하게 답변을 드렸다. 그랬더니, 이사님은 일단은 신입이고, 1년 정도는 좀 더 다니면서 생각을 해보면 좋겠다고 말하시면서, 마침 AWS 클라우드 환경에서 다른 클라우드 환경으로 인프라 이전을 해야하는데, 그 업무를 자신과 함께 진행해보면 어떻냐고 제안을 해주셨다. 이사님은 워낙 지식의 너비와 깊이가 (개발적으로나 개발외적으로나) 넓은 분이셨고, 특히나 네트워크에 대해서는 전문가라고 주변 동료들로부터 들어서 익히 알고 있었다. 때문에 이사님으로부터 인프라와 네트워크 관련 지식을 배울 수 있다면, 더할 나위 없이 좋은 기회라는 생각이 들었다. 그래서 이사님의 제안에 OK 사인을 드리고, 인프라 이전 업무를 진행하면서, 후임 안드로이드 개발자를 위한 인수인계도 같이 병행해서 진행해보기로 했다.
비록 기대했던 만큼은 아니지만, 퇴사 선언 후, 4개월간 이사님 옆에서 폭포수처럼 쏟아지는 인프라 업무와 지식을 듣고 있자니, 조금씩 큰 그림을 그릴 수 있게 되었고, 예전에는 뭣도 모르고 그냥 블로그를 따라하며 설정했던 것들이 이제는 어떤 의미를 가지고 왜 그렇게 설정해야하는지 이유있는 행동으로 조금씩 변해갔다. 그리고 그 과정에서 현재의 인프라 구조도를 최신 버전으로 다시 리뉴얼하면서, 그동안 팀에서 잊혀져 관리되고 있지 않던 죽은 서버들을 몇 개 발견해내서 AWS 비용 절감에도 아주 눈꼽만큼의 도움을 드릴 수 있었다(ㅎㅎ)
하지만, 4개월이 지나고 나니, 이제는 정말 회사를 떠나 내 힘으로 처음부터 끝까지 인프라도 구축할 수 있을 것 같았고, 백엔드 서버 API도 만들어 보고 싶어졌다. 그래서 결국은 12월에 다시 한 번 퇴사를 확정 짓게 되었다. 후임 개발자 분들이 대학을 갓 졸업한 신입 분들이셔서, 퇴사 후 3개월 간은 프리랜싱 계약을 통해 원격으로 업무를 조금씩 돕기로 했다.
퇴사를 앞두고 신나게 회사를 다니고 있던 어느 12월, 공유 오피스에서 우리 팀 바로 옆 세션에서 일하고 계시던 다른 회사의 대표님으로부터 백엔드 개발자 포지션으로 스카웃 제안을 받게 되었다. 살다보니 이렇게도 기회를 얻을 수 있구나 싶어서 굉장히 흥미로웠는데, 사실 옆자리 팀과는 나이 또래도 2030으로 비슷하고 다들 술도 좋아하고 사람과 대화를 좋아하여 같이 회식도 여러 번 하고 쉬는 시간에도 이야기를 자주 나눠 꽤나 친한 사이였다. 이미 나를 잘 알고 있었던 대표님이 내부 개발자 분들에게 저와 함께 일해보는 건 어떻겠냐고 물어보셨고, 개발자 분들도 흔쾌히 OK 해주셔서 포지션 제안을 주셨다고 한다.
다만, 내가 합류하게 될 팀은 기존 팀은 아니었다. 대표님은 현재의 서비스를 다른 회사에 매각했고, 다시 팀을 꾸려 새로운 아이템으로 창업을 할 멤버들을 모집하고 있었다. 기존 팀원들 중 대부분이 함께할 것이고, 백엔드 개발자의 포지션이 필요하여 평소 하고 싶다고 노래를 부르고 다니던 나에게 제안을 주셨다고.
너무 좋은 제안을 주셔서 감사했지만, 신경쓰이는 부분들이 많았다. 우선, 같은 공간에서 일하는 다른 회사로 바로 이직을 하는 것이 상도덕에 어긋나는 행위는 아닌가-하는 굉장히 순수하고도 신입다운 고민이 있었고 내일 망해도 이상하지 않은 초기 스타트업에 합류하여 월급을 제대로 받을 수 있을까-하는 현실적인 고민도 있었다. 무엇보다도 아직 실력이 부족하다고 생각해서 시골에 짱박혀서 개발 공부를 좀 더 할 생각이었던 내가 백엔드 개발자로서 실무 경험도 없는 채로 처음부터 끝까지 시스템을 구축하고 운영하는 일을 잘 해낼 수 있을지에 대해서도 확신이 서지 않았다. 대표님께 고민할 시간을 좀 달라고 하여 일주일간 고민을 해보게 되었다.
1년정도의 연차에서 시스템을 처음부터 끝까지 직접 만들어볼 수 있다는 것은 분명 엄청난 일이었다. 앞으로 몇 달간은 고생길이 불보듯 뻔했지만, 그 과정을 경험하게 되면, 나는 분명 지금보다도 훨씬 크게 성장해있을 것이 분명했다. 그리고 제안받은 회사에서는 이전 회사에서는 느껴보지 못했던 다양한 직군의 팀원들과 머리를 맞대고 빠르게 서비스를 만들고 성장시키는 경험, 그것을 해볼 수 있을 것 같았다.
내 능력보다 큰 범위의 일임을 알고 있었지만, 나는 한번 도전해보기로 했다. 고민은 깊게 했지만, 일단 선택한 뒤로는 무조건 앞만 보고 열심히 달려갈 것이었다. 지금까지의 내가 그래왔던 것처럼 왠지 해낼 수 있을 것 같다는 느낌도 들었다. 결국, 나는 대표님께 OK 답을 드렸고, 2주간의 휴식 이후 출근하기로 했다.
다시, 맨땅에 헤딩이 시작되었다. 처음 안드로이드를 배웠던 것처럼, 나는 다시 백엔드 개발을 혼자서 공부해갔다. 다행히도 웹, 앱부터 서버까지 다양한 개발 경험이 있으신 CTO 님이 옆자리 동료였기에 같이 설계하고 모델링을 하며 처음부터 차근차근 해나갈 수 있었다.
설계 기간동안 나는 퇴근 후 백엔드 개발을 빠르게 배워나갔고, 기존에 알고있던 지식을 최신 기술로 조금씩 바꿔나갔다. 본격적으로 개발 작업을 시작해야할 때즈음에는 어느정도 서버 개발환경에 익숙해졌고, 이전 회사 퇴사 직전에 CTO님으로부터 배웠던 인프라 지식을 이용하여 신규 서비스를 위한 인프라를 처음부터 하나씩 구축해나갔다.
이후 약 4개월간의 작업기간 동안 나는 거의 주 7일 일을 했던 것 같다. 아무래도 신규 서비스이다보니, 요구사항도 자주 변했고, 그에 따라 기획도 자주 변해갔다. 작업 기간 중반 즈음에는 갑자기 서비스의 흐름이 완전히 바뀌기도 했다. 잦은 변경 때문에도 업무가 많아지긴 했지만, 무엇보다도 나는 스스로 다른 팀원들보다 부족하다는 생각을 생각을 가지고 있어서였는지, 팀에 피해를 끼치지 않기 위해서라도 더 많은 시간동안 더 꼼꼼하게 작업을 진행했던 것 같다.
그리고 4개월 뒤. 대망의 서비스 런칭일이 도래했다. 팀원들은 모두 시원섭섭한 마음과 긴장된 마음이 교차했고, 오후 두시즈음 배포를 완료했다. 기존부터 마케팅을 계속 해놓은 덕분인지 런칭 직후부터 사용자 유입이 많았고, 데이터베이스를 통해 하나 둘 씩 쌓이는 데이터를 바라보면서 나는 엄청난 희열을 느꼈다. 그리고 그날 저녁, 우리는 기분 좋게 회식을 했다. 물론 늘 회식할 때 장애가 터지는 개발자 세계의 국룰 때문에 마음이 불편했지만, 다행히도 문제없이 그날을 넘길 수 있었다.
그렇게 생애 처음으로 0에서 1을 만드는 경험을 하고부터 벌써 1년 6개월 정도가 지났다. 그동안 팀도 서비스도 나름대로의 성장을 했고, 그 과정에서 많은 것들을 얻었다고 생각한다. 비록 지금은 퇴사했지만, 회사에서 함께했던 1년 9개월 간의 기간을 회고해보며, 기억나는 점들을 몇 가지 적어보았다.
런칭 이후, 우리 팀은 1-2주마다 한번씩 꾸준히 서비스를 업데이트 해왔고, 그를 위해 수없이 많은 고민과 테스트를 해왔다. 서비스는 폭발적이지는 않았지만, 그래도 조금씩 성장을 했고, 성장 속도를 더 가파르게 높이기 위해 우리는 끊임없는 노력을 했다.
오후 4시에는 항상 간식시간을 가지며 같이 스몰토크하는 시간이 있었는데, 이야기를 하다보면 늘 서비스에 대한 아이디어로 귀결되어 열띤 토론을 하기도 하고, 칠판 앞에서 보드마커로 열변을 토하기도 했다. 지금 생각해보면 그때의 우리는 참 열정적이었다는 생각이 든다.
일하는 것 이외에도 회사를 다니면서 참 재미있는 추억들을 많이 쌓았다. 일이 별로 없던 초기에는 덕수궁으로 야외 근무를 가서 서비스 기획 이야기를 나누기도 하고, 점심시간마다 사무실 근처의 인스타 맛집, 카페를 탐방하기도 했다.
다들 나이대가 비슷하여 장난도 많이 치며 잘 지냈고, 팀원들마다 개성도 뚜렷하여 함께 지내는 동안 재미있는 일도 많았다. 지금 기억나는 예를 들자면, 과거에 패션계에서 일하던 마케터님과 대표님이 서로 패션부심으로 대결을 펼치는가 하면, 특이한 먹을거리를 좋아해 매번 다시마맛 젤리처럼 이상한 간식을 가져오는 동료도 있었다. 가위바위보부터 시작해서 실시간 특정 정류장의 따릉이 대수 맞추기, 빙고게임, 넌센스 퀴즈 등 다양한 방식으로 커피내기를 하기도 했다.
사실 서비스 개발에 막 착수하던 초기에는 작업이 많아 힘도 들었지만, 회사 분위기가 너무 좋아서 매일매일 놀러가는 기분이었다. 아마 시간이 더 지나더라도 이때만큼 재미있게 하루하루 회사생활을 할 수 있을지 모를 정도로.
팀에 합류하기 전에는 나에 대한 확신이 별로 없었다. 맡은 일을 잘 할 수 있을지 불안했고, 팀원들에게 피해를 끼칠까봐 마음 속으로는 늘 괴로웠던 적이 많았다. 그런데 팀원들과 함께하니 생각보다 그 과정은 너무나도 재미있었고, 그 과정에서 이전과는 비교할 수 없을 정도로 크게 성장했다고 생각한다. 이제 나는 상용 서비스의 서버를 혼자서 구축해본 사람이 되었고, 그 서비스를 2년 가까이 (그래도) 큰 문제없이 개발하고 운영해온 사람이 되었다. 아직 부족한 점이 너무나도 많지만, 이래저래 부족한 나를 도와주고 이끌어준 동료들 덕분에 개인적으로도 크게 발전할 수 있었다.
1년 9개월간 회사를 통해 인간적으로나 커리어적으로나 좋은 경험을 많이 했지만, 사실 서비스를 런칭하고 1년 동안 운영을 하고부터는 회사를 떠나야겠다는 생각이 들었다. 다양한 이유들이 있었지만, 가장 큰 이유는 회사가 다른 회사와 합병한 뒤로, 조직문화는 딱딱해지고, 데이터를 기반으로 하던 의사결정은 없어졌기 때문이었다. 합병한 뒤로는 이해할 수 없는 의사결정이 늘어났고 서비스를 팀원들과 함께 만들어간다는 느낌보다는 그냥 요구사항에 맞춰 기능개발을 하는 회사 내 외주개발사처럼 느껴졌다.
무엇보다도 개발자로서 성장한다는 느낌이 더이상 들지 않았다. 초기 단계에 합류하여 개발을 할 때에는 처음 접하는 기술들도 많고, 공부해야할 것도 많아서 말하자면 “양적성장”을 할 수 있었지만, 시간이 지나고 업무에 익숙해질수록 기존에 하던 방식의 개발만 하고 “질적성장”은 별로 하고 있지 못하다는 생각이 들었다. 나는 프로덕트와 사용자를 위해 더 나은 코드를 작성하는 개발자가 되고 싶었고, 개발자 동료들과 함께 개발을 주제로 함께 고민하며 성장해나가고 싶었다. 결국, 입사 후 1년 9개월이 지난 뒤, 나의 성장을 함께했던 그 곳을 떠나 다른 곳으로의 이직을 준비하게 되었다.