쾌락코딩

첫 퇴사와 이직을 앞두고

|

2021년 5월 4일 날짜로 퇴사를 하게 되었습니다. 새로운 곳에서 새로운 도전을 하기 위해 두 달 가량 채용 프로세스를 밟았고, 운이 좋게도 제가 평소 자주 사용하는 서비스를 운영하는 조직, 평소 많이 궁금했고 관심이 많이 갔던 조직에 합격하여 현재 회사를 떠나게 되었습니다😊

이직 준비에 몰두하느라 제대로 된 글도 못썻고, 저 자신을 돌아볼 시간 없이 폭풍 치는 기술 면접 질문과 코딩 테스트를 헤쳐나가기 바빴던 것 같습니다. 이제야 조금 잠잠해진 이때 즈음 지난 날과 앞으로의 날을 생각해 볼 겸 키보드를 두들겨 보려 합니다🤭

2년 3개월의 짧은 경력을 보내며 들었던 생각

저는 2019년 2월에 Android로 처음 커리어를 시작한 (아직도)주니어입니다. 사직서에 총 경력을 적는 란이 있어서 쓰다 보니, 퇴사 기준으로 총 경력이 2년 3개월 밖에 되지 않더군요. 회사 규모가 나름 큰 편이라 사람이 많은데도 불구하고 2년 3개월 만에 퇴사하는 사람은 그리 흔치 않은 것 같습니다. 많은 것을 배우고, 많은 사람들을 만났다고 생각했지만 아직 병아리였네요🐣.

그래도 2년 넘는 시간 동안 하루하루 허투루 보낸 날은 없었기에 그동안 열심히 배우고 느꼈던 점들을 정리해 보려 합니다. 멋 훗날 시니어 개발자가 된 제가 첫 이직을 겪고 적었던 이 글을 보면 되게 재밌지 않을까요? ^__^

1. 최고의 복지는 최고의 동료

이런 생각을 가지게 된 시점이 정확히 기억나네요. 저는 아쉽게도 입사 직후 1년 동안 혼자 Android 개발을 했습니다. 15명 정도로 구성된 팀에 소속되어 있었지만, 저 혼자 Android 개발자였습니다. 다들 너무 좋으신 분들이라 조직에 잘 적응했고 분위기도 정말 좋았지만 혼자 개발하는 것에 대한 아쉬움은 있었습니다.

1년이 지난 후 모바일 개발팀이 새로 생기고, 새로 합류하신 분들, 사내 다른 팀에서 모바일을 개발하시던 분들이 한자리에 모이게 되었고, 함께 개발하기 시작했습니다. 그때 부터 최고의 복지는 최고의 동료라는 생각이 들었던 것 같아요. 물론 혼자 개발했던 1년 동안에도 재미있었지만, 좋은 사람들과 함께 개발하게 된 나머지 시간들은 훨씬 훨씬 즐거웠습니다. 신기하게도 팀원들 모두가 활기 넘치는 분들이었고, 수평적인 마인드(아니였다면 너무 죄송합니다;;)의 소유자였기에 출근하는 날이 매번 즐거웠던 기억이 납니다.

여기서 최고의 동료라는 표현은 지극히 주관적인 표현인데요, 개인의 기술력, 인성, 취미, 관심사 등등을 떠나서, 함께 있을 때의 시너지가 팀 성장에 긍정적인 영향을 미친다면 최고의 동료라고 생각합니다. 돌이켜보면 저희는 서로가 서로 부족한 점을 잘 알고 케어해주었던 것 같습니다. 저 같은 경우는 주니어다 보니 저희 서비스의 도메인 지식이 많이 부족해서 귀찮게 물어본 적이 많았는데요, 바쁜 시간 속에서도 모두들 귀찮은 내색 없이 전부 친절히 알려주셨고, 저 역시 기술적인 부분으로 질문이 들어오면 귀찮아하지 않고 도와주었던 것 같습니다. 아무래도 이런 점이 팀 성장에 긍정적인 영향을 미치지 않았을까 싶습니다. 물론 어디에도 완벽한 팀은 없기에 채워나가야 할 부분도 많이 남아있는 팀이었지만, 적은 인원과 여러 가지 상황을 고려해보면 훌륭한 팀이라고 생각합니다.

떠날 때 가장 눈에 아른거리고 망설이게 하는 것이 바로 최고의 복지라고 생각합니다. 아마도 저한테 최고의 복지는 짧은 시간이었지만 함께한 동료들이지 않았나 싶습니다.

정말 즐거웠습니다!

goodbye

2. 문화라고 착각했던 것, 그래도 값진 것

입사를 하고 나서 몇 주 되지 않았을 때 일입니다. 팀원이 15명 정도 있었는데, 한 분이 기술 세미나를 하기 위해 저희 팀 모두를 회의실로 초대했고, 곧바로 Spring 라이브 코딩 30분 정도 했었습니다. 누구 앞에서 발표하는 것이 두렵고, 특히나 내 코드를 누군가에게 보여준다는 것이 덜컥 겁이 나는 신입 시절에 보았던 그 라이브 코딩 세미나는 충격적이였습니다. 심지어 몇 달에 한 번, 짧을 때는 몇 주에 한 번씩 매번 본인의 지식을 공유하셨습니다. 특별히 발표 자료를 준비해온 게 아니라, 가볍게 intelliJ를 하나 켜놓고 본인의 생각을 코드로 표현하는 공유였습니다. spring을 몰랐기에 내용은 잘 몰랐지만 엄청난 자극이 되었고, 저도 저 대화에 끼고 싶다는 생각, 언젠간 저도 라이브 코딩 하면서 지식을 공유하고 싶다는 생각이 끊이질 않았습니다. 그래서 이제 막 코틀린을 조금 공부하고 나서 부랴부랴 어설픈 라이브 코딩 세미나를 했던 기억이 나네요😅. 아마 다른 분들도 저와 비슷한 자극을 받지 않았을까요?

아무튼 제가 일반적으로 봐왔던 형식적인 세미나(ppt를 만들어서 슬라이드를 넘기며 하는)가 아니라, 다소 부담 없이 본인의 생각을 코드로 보여주며 공유하는 것을 보면서 굉장히 좋은 문화구나라고 생각했었습니다. 그러나 시간이 많이 지나고 나서 깨달은건, 그건 그분의 빛나는 노력이었지 문화가 아니었습니다. 문화는 한두 사람이 주도해서 형성되는게 아니라, 거의 대부분의 미국 사람들이 집에서 신발을 신는 것과 같이 모두에게 자연스럽게 스며든 것이어야 합니다. 한두 사람이 포기해버리면 더 이상 이어지지 않는 건 문화라고 보기 어렵습니다.

image

세미나 까진 아니더라도, 저도 좋은 개발 문화가 되길 바라면서 시도한 것이 있습니다. 부문 내 모든 개발자들끼리 각자 공부하다가 발견한 좋은 자료를 서로 공유하고, 가능하다면 자극도 받을 수 있는 문화를 만들고자 개발 링크 공유방을 사내 메신저에 만들었는데요, 활발한 문화로 만드는 건 참 어렵더군요🧐. 비록 제가 링크를 올리지 않으면 많이 조용해지는 방이긴 했지만, 앞으로는 모두가 활발히 공유하는 메시지방이 되었으면 하는 바람이 있습니다 ㅎㅎ.

함께 성장하기 위한 좋은 개발 문화를 만드는 건, 실패하더라도 큰 값어치가 있다고 생각합니다. 소수의 인원이라도 저처럼 그 노력에 자극을 받는 사람이 생기고, 그 사람들이 또 좋은 문화를 위해 노력하다 보면, 본인의 성장은 물론이고 조금씩 조금씩 조직에 맞는 개발 문화가 생겨나지 않을까 생각합니다.

3. 비개발자가 바라보는 개발자 or 개발 조직

개발자는 절대 서비스가 런칭되었다고 해서 놀지 않습니다. 좋은 소프트웨어, 좋은 품질, 경쟁력 있는 IT 서비스가 되기 위해서는 결국 코드를 갈고닦아야 합니다. 추후에 있을 추가적인 요구 사항을 다른 경쟁 서비스보다 더 안정적이고 빠르게 반영하기 위해서 개발자는 늘 좋은 코드에 대해 고민하고, 리팩토링 하고, 더 안정적인 기술과 새로운 기술을 적용해야 합니다. 즉, 1차적으로 프로젝트가 런칭되었다고 해서 거기서 끝이 아닙니다. 계속해서 리팩토링을 고민하며 반영하는 사람이 필요하고, 새로운 기술을 학습해서 적용시킬 사람이 필요하며, 때로는 동료 개발자들에게 스파크가 될 사람이 필요합니다. 그리고 이게 바로 우리 서비스를 늘 빛나도록 갈고닦는 일이라고 생각합니다.

하지만 이를 비 개발자, 특히 프로젝트 투입 인력과 기간 결정권자가 비 개발자인 경우, 설득하기란 참 어려운 일인 것 같습니다. “우리 개발 조직에는 개발자 인원이 4명일 때와 8명일 때 차이가 수치적으로 이만큼 나니까 총 8명이 필요해요”라고 말하기가 참 어렵고 애매합니다. “신규 런칭이 끝나도 코드를 계속 갈고닦아야 하고, 추후의 요구 사항 변경을 준비할 사람들이 많이 필요해요”라고 말해도, 사실 외부적으로는 보이는 게 없기 때문에 설득하기가 참 어려운 것 같습니다.

제가 2년차에 접어들자마자 한 작업은 저희 부문의 주력 서비스를 리뉴얼 하는 작업이었습니다. 꽤나 큰 앱이었고, 코드량도 많은 프로젝트인데요, 리뉴얼을 하기 직전 코드가 상당히 레거시 코드였습니다. 당연히 MVP, MVVM도 아니었고, Kotlin도 아니었으며, 이를 유지보수 하는 분은 단 한 분이었습니다. 한 분이 그렇게 큰 프로젝트를 담당하다 보니 코드를 갈고 닦을 시간은 턱없이 부족한 상황입니다. 제가 느낀 첫 인상은, ‘한 5년전 코드 그대로구나’입니다. 놀라운 것은 그게 저희 주력 서비스라는 점이었습니다. 주력 서비스라면 당연히 계속 갈고 닦아야 했는데, 그러지 못해서 리뉴얼에 무려 1년이란 시간이 걸렸습니다. 조금 더 개발자를 붙여서 평소에 갈고 닦았으면 어땠을까요..?

회사마다 정책이 다르고, 전략이 다르니 좋다 나쁘다 딱 잘라 말하긴 어려운 부분이지만, 개인적으로는 조금 아쉬웠던 부분으로 남을 것 같습니다.

언젠가 다시 한번, 더 좋은 서비스를 위해 개발자 충원을 어필해야 한다면, 과연 어떻게 어필해야 좋을까요? 참 어려운 주제인것 같습니다.

앞으로의 날들

한 회사에 오래 있다고 하더라도, 1년 차 때 느낄 수 있는 것, 3년 차, 5년 차, 10년 차 이상일 때 느낄수 있고 배울 수 있는 것들이 다 다를 거라고 생각합니다. 짧은 2년 3개월이었지만, 1년 차, 2년 차, 3년 차가 되면서 느꼈던 점들이 많이 달랐고, 저는 그대로지만 주변 환경과 사람들이 바뀌면서 새롭게 느꼈던 점들도 많았습니다. 앞으로의 날은 이전 회사보다 더 오래 있으면서, 4년 차, 5년 차 때 느낄 수 있는 것들도 경험해보고 싶습니다. 물론 더 이상 제가 성장하기 힘든 환경이 되거나, 회사의 방향이 제가 생각 하는 방향과 많이 다르게 변한다면 또 한 번의 이직을 생각하겠지만, 그전까진 최대한 많은 경험을 쌓으며 즐겁게 일하고 싶습니다.

Comments