‘성장’을 갈망하는 4년차 개발자 인터뷰
Server/Web팀 강태화님, 이민구님이 리멤버를 선택한 이유.
담당하고 계신 업무와 기술 스택에 대해 소개 부탁 드립니다.
강태화 : 현재 Server/Web팀과 채용공고 크루(Crew*)에 속해있습니다. 리멤버 커리어가 잠재적 구직자의 이직을 도와주는 서비스를 먼저 선보였는데요, 적극적 구직자를 위한 서비스를 지원하기 위해 채용공고 서비스를 만들어가고 있습니다. Server/Web 팀에는 5명의 서버 개발자와 1명의 DevOps 개발자가 있습니다. Ruby on Rails로 대부분의 API 서버를 구현하고 있으며 인프라는 AWS를 이용합니다.
(*Crew : 서비스별 미션을 달성하기 위한 조직으로, 각 미션별로 적합한 기획, 개발, 디자인, 사업 등의 다양한 크루원을 모집하여 구성)
이민구 : 지금은 인재추천 크루(Crew)에서 사내에 계신 헤드헌터분들이 빠르고 효율적으로 후보자를 찾을 수 있는 admin을 개발 중입니다. 프론트 엔드 개발자 5명과 함께 리멤버 커리어 웹서비스와 리멤버 커뮤니티 웹서비스를 만들기도 했고요. 기술 스택은 React를 사용하고 있습니다. SEO 등 back-end가 필요한 경우에는 Next.js를 사용, 그렇지 않은 경우에는 serverless하게 서비스를 만듭니다.
두 분은 어떤 이유로 리멤버를 선택하셨나요?
강태화 : 이전 회사들에서 아쉬웠던 점을 생각했어요. 첫 회사에서는 개발자가 저 혼자여서 ‘맞는 방향으로 성장하고 있는건가’, ‘다른 사람 대비 잘하고 있나’를 알 수 없었죠. 좋은 동료와 함께 한다면 시행착오를 줄일 수 있을텐데 라며 아쉬웠고요. 다음 회사는 이 부분을 고민해서 선택했지만 top-down으로 ‘돈 벌어와라’라고 하다 보니 정부 지원 사업, SI성 프로젝트를 주로 하게 되었고, 결국엔 협업을 하기 보다는 또 혼자서 개발을 하고 있더라고요. 개발 팀이 잘 갖춰진 곳, 개발 문화가 잘 갖춰진 곳을 찾았어요.
리멤버 인터뷰를 봤는데 테스트 코드가 7천개가 넘는다는 내용이 인상적이었어요. 대부분의 조직에서 테스트를 작성하고 싶어하지만 유지보수 가능하게 작성하는 방법을 모르거나, 일정이 빡빡해서 넘어가곤 하잖아요. 테스트 커버리지가 90%를 넘어가고, 코드 퀄리티를 중시하는 조직이라는 점이 매력적이었죠. 제가 생각하는 개발 문화가 잘 갖춰진 곳이라고 생각했습니다. 참고로 지금 API 프로젝트들의 테스트 코드 수는 9천개가 넘습니다.
회사의 사업 방향에 대해 공감한 부분도 있고요. ‘명함앱으로 알고 있었는데 리멤버 커리어 등 다양한 서비스가 있구나.’ CEO면접에서 재호님께서 앞으로의 서비스/사업 방향에 대해 굉장히 잘 설명해주셨어요. 리멤버가 유틸리티 앱에서 끝나는 게 아니라 ‘커리어의 생애주기를 책임지는 비즈니스 플랫폼으로 나아가려 하구나’, 그리고 ‘이제 막 그 일을 시작해서 재미있는 일들이 많겠다!’
이민구 : 두 가지 이유가 있었는데요. 첫 번째는 ‘내가 쓰고 싶은 서비스를 많이 만들어보고 싶다’에 대한 니즈가 컸어요. 리멤버는 명함관리 기능을 넘어서 커리어, 커뮤니티 등 직장인들을 위한 서비스가 많아질 것이라고 생각했고, B2C 제품을 경험하며 다수 유저의 피드백을 받고 싶었어요. 두 번째는 ‘개발자 개인으로서가 아니라 개발팀의 팀원으로 개발해보고 싶다’에 대한 갈증이 있었던 것 같아요. 이전에는 회사의 전략상 빠르게 많은 제품을 만들어야 하다보니 효율적으로 업무를 배분해서 각자 개발을 진행하는 방식이었어요. 다른 분이 무슨 일을 하는지 전혀 몰랐죠. 면접에서 개발 문화에 대해 많이 질문 드렸는데 코드 리뷰나 페어 프로그래밍 등이 잘 정착되어 있다고 생각해 합류하게 되었습니다.
면접에서 많은 이야기를 나눈다해도
입사해서 다녀보지 않으면 모르는 부분이 많을 수밖에 없죠.
입사해보니 ‘입사 전엔 예상하지 못했다’라는 부분이 있으셨나요?
이민구 : 회고가 굉장히 잘 정착되어 있어요. 전 회사에서도 회고가 없었던 건 아니에요. 분기에 한 번 정도 있었죠. 리멤버에서는 매주 금요일 회고를 진행하는데 모든 개발자분들이 굉장히 엄격한 마음가짐으로 회고에 임하고 계세요. 회고를 반복하다보면 어떤 문제가 지속적으로 발생하는지 알 수 있고, 그 문제를 어떻게 해결할 수 있는지에 대해 논의해볼 수 있어 좋아요. 회고 외에도 많은 양의 코드 리뷰가 이루어져요. 페어 프로그래밍도 자주 진행하는데, 사실 뭐가 도움이 될까 싶었어요. 생산성이 절반이 되는 거 아닌가 싶기도 했고요. 막상 페어 프로그래밍을 진행하니 그동안 내가 잘못 생각해왔구나 싶었죠. 개발 실력을 비약적으로 성장시킬 수 있었던 데에는 개발 문화가 잘 뿌리내려져 있는 점이 큰 것 같아요.
강태화 : 스타트업인데 체계가 잘 갖춰져 있어요. 자유로움이 없다는 것이 아니라 자율과 책임을 잘 발휘되도록 바운더리를 잘 잡아주고 있다는 느낌이 들어요. 특히 ‘드라마앤컴퍼니 생활백서’를 보고 많이 놀랐어요. 회사 생활에 대한 거의 모든 내용이 다 정리되어 있거든요. 입사 초반엔 으레 ‘어떻게 여기에 적응해야 하나’에 대한 고민이 많은데 생활백서를 통해 도움을 많이 받았죠.
‘Server/Web 팀에 대한 모든 것’이라는 문서도 있는데, 입사 첫날 개발 환경을 어떻게 세팅해야 하는지, 어떤 계정을 신청하는지부터 업무와 관련된 내용이 체계적으로 정리되어 있어요. 첫 날에 뭘해야 하는지 몰라 느끼는 당황스러움을 줄여주고, 일하면서도 참고가 되서 자주 보는 문서에요.
이민구 : 맞아요. 이전 회사에서 문서화를 안했던 것은 아닌데, 이렇게 잘 정리되어 있는 문서는 처음 봤던 것 같아요. 처음 입사한 사람이라도 바로 개발을 시작할 수 있겠다라는 느낌이 들 정도죠. 작성하는 과정에서는 고통스러우셨을 것 같은데, 이렇게 정리해두는 게 훨씬 효율적이라고 생각해요. 웹 개발자, 서버 개발자분들이 들어오셨을 때 많은 도움을 요청하지 않아도 적응하실 수 있어요.
강태화 : 얘기가 나온 김에.. 모든 내용을 문서화 해놓으니 어떤 부분이 문제가 됐고, 왜 이런 코드를 짜게 된거고, 어떤 기획에서 나왔는지 디버깅할 때도 쉽고, 히스토리를 찾는 데도 도움이 돼요. 코드도 짜고 문서도 쓰는 게 귀찮을 수 있는데 개발 프로세스를 효율적으로 가져간다는 측면에서 훨씬 좋아요.
태화님은 서버 개발 경험이 없는데 잘 적응해주고 계신 것 같아요.
강태화 : 온보딩 과제가 도움이 많이 된 것 같아요. 채용 과정에서 진행한 과제를 다시 한 번 해보는데 코드 스타일이나 업무 스타일에 대해 잘 알 수 있었어요. 코드 리뷰를 받으니 모르는 부분도 쉽게 물어볼 수 있고 팀의 스타일이나 컨벤션을 더 쉽게 습득할 수 있었던 것 같고요.
리멤버는 채용 과정에서 과제가 필수이죠.
다른 회사에서 일반적으로 진행하는 알고리즘 테스트, 코딩 테스트가 아닌 ‘48시간 과제’를 진행하는데 이 부분은 어떠셨나요?
강태화 : 과제가 있다고 했을 때 부담스럽긴 했어요. 코딩 테스트는 그냥 가서 하면 되는데, 과제는 제 손을 떠날 때까지 찜찜한 기분이 계속 되잖아요. 막상 과제를 받아보니 ‘겉보기에’ 엄청 어려운 과제는 아니었어요. 면접을 진행하면서 ‘생각보다 심오하구나’ 라고 느꼈죠. 많은 걸 확인할 수 있는 과제라는 생각이 들었고, 역량을 검증하는 데에 도움이 되는 과제였다고 생각합니다.
이민구 : 다른 회사의 과제와 비교해봤을 때 과제가 합리적이라고 생각했어요. 생각보다 그렇지 않은 과제들도 많거든요. 자격 요건 이상의 것을 요구하거나, 현실과 맞지 않는 기술을 요구하는 경우도 많고요. 실제로 회사와 잘 맞는 사람인가를 보는 과정이라고 느꼈습니다. 시간도 길지 않았고요.
면접도 회사마다 스타일이 다른데 리멤버의 면접은 어떠셨나요?
강태화 : 과제를 시현하면서 면접이 시작되는데요. 평가가 아니라 피드백을 받는 느낌이어서 면접 자체가 나에게 도움이 된다고 생각했어요. 내가 더 잘 성장할 수 있는 곳인가에 대한 궁금증을 해소할 수 있었고요. 압박 없이 편안하게 면접을 볼 수 있었습니다.
이민구 : 면접관이 면접의 난이도를 조절하는 게 쉽지 않다고 생각해요. 그렇다보니 지원자 입장에서 불쾌했던 면접도 있고, 반대로 이 포지션에 대해 잘 알고 면접을 진행하는 걸까하는 생각이 드는 면접도 있었어요. 그런 측면에서 리멤버의 면접은 면접관분들이 내가 속한 직군에 대해 잘 이해하고 질문하신다고 느꼈습니다. 실무에 딱 맞는 기술에 대해 질문하시고, 면접이 나를 평가하려는 자리가 아니라 회사는 필요한 인재를 찾고, 지원자도 가고 싶은 회사인지 확인하는 자리 같다는 느낌을 받았어요.
두 분이 생각하시는
리멤버의 강점은 무엇인가요?
이민구 : 회사의 측면에서 보면, 사내 조직간의 소통이 굉장히 원활해요. 소통이 원활하다보니 자유롭게 의견을 개진하고, 뜻이 맞는 사람들끼리 원하는걸 구현해볼 수 있어요. 팀 측면에서는 굉장히 개발문화가 잘 잡혀있다는 큰 장점이 있고요.
강태화 : 민구님의 말씀에 동의해요. 열정을 가진 뛰어난 동료들이 많이 있다보니 커뮤니티 웹 서비스의 경우에도 웹 개발자분들이 먼저 제안하고 진행했어요. 가장 큰 강점 중의 하나라고 생각해요.
over-communication을 지향해서 모든 정보가 공유될 수 있도록 노력하죠. 대부분의 조직에서 경영진만 알고 있는 정보가 있는데, 웬만한 정보는 전사에 공유가 잘 되고 있어요. 우리 회사가 어느 방향으로 가고 있으니, 나는 어떻게 기여해야겠구나를 분명히 알 수 있죠.
데이터팀(Data Intelligence팀)이 따로 있어서 데이터를 많이 갖고 있을 뿐 아니라 잘 활용하고, 데이터를 기반으로 의사결정을 해요. 스타트업에서는 그냥 추측만으로 결정 내리고 방향을 잡기 쉬운데 데이터로 결정 내리는 것이 인상적이었죠.
리멤버 개발자로서 좋은 점은 무엇일까요?
이민구 : 기술적인 부분에서 뒤쳐지지 않기 위해서 이전 프로젝트에서 겪었던 문제의 해결 방안을 항상 모색해요. 새로 진행하는 프로젝트마다 최신 기술을 수용하기 위해서 항상 노력하고요. 빠르게 변화하는 웹 개발 트렌드에서 뒤쳐지지 않아요.
현재 나와있는 major 기술은 거의 다 사용해보고 있어요. Redux를 많이 사용했는데 생각보다 저희 사용 시나리오에 맞지 않다고 판단해서 Context API를 적극적으로 사용해보았고, 그 다음 프로젝트에서는 테스트 코드를 도입해보고 싶어 테스트 코드를 넣고 코드 리뷰 과정에 편입시켰습니다. 그 다음 프로젝트에서는 타입 스크립트와 swr을 적극적으로 도입했어요. 최근에 내부 시스템은 실험적인 기능 도입을 위해 Recoil, Suspese 같이 아직 다소 experimental한 기능들도 부분적으로 사용하고 있습니다.
강태화 : 크루로 일하면서 개발자로서 단순히 기능을 구현하는 것이 아니라 제품을 구현하고 있다고 느껴요. 개발자는 정해진 기획서를 개발만하는 로봇처럼 일하게 되는 경우도 많은데, 기획에 직접 참여하고 자율적으로 일하고 있죠.
테스트 코드를 필수적으로 작성하고, 코드 리뷰를 적극적으로 진행해서 퀄리티 있는 코드를 갖춰가고 있고, 회고를 통해 매주 어떤 점은 잘했고, 아쉬운 점은 어떻게 보완할까에 대해 자주 이야기를 나눠요. 더 나은 조직을 만들어나가기 위한 문화가 잘 되어 있다고 느끼죠.
회고, 회의하다보면 개발은 언제하냐라고 생각하시는 분들도 계시더라고요.
이런 의견에 대해서는 어떻게 생각하시나요?
강태화 : 회고와 회의를 어떻게 하는지에 따라 다른 것 같아요. 의미 없는 회의가 계속되면 개발자가 참여하는 의미가 당연히 없겠죠? 리멤버에 합류하고 나서는 기획에 참여하는 것이 오히려 개발 시간을 줄일 수 있다고 생각하고 있어요. 왜 이런 기획이 나왔는지에 대한 배경을 알고 있으면, 기획서에서 놓치고 있는 부분을 파악할 수 있어서 불필요한 수정사항이 줄어 들거든요.
이민구 : 솔직히.. 처음에 합류했을 때에는 긴 회고 시간에 대해 회의적이었던 것 같아요. 일하는 것도 바쁜데 이렇게 오랜시간 회고해야 하나라고 생각하기도 했고요. 저희의 회고 방법이 점점 발전하고 있는데요. 처음에는 각자에게 무제한으로 시간을 주며 진행했는데, 사람이 많아지니 미리 설문지를 받기도 하고 개개인별로 시간 제한을 두고 있어요. 모든 일이 시행착오를 거치지 않으면 발전할 수 없다는 걸 알게 되었어요. 회고가 시간 낭비라고 느끼는 조직도 많을텐데, 충분한 시간을 갖고 발전시켜나가면 효과적으로 동료들과 커뮤니케이션 할 수 있는 좋은 시간이라고 생각합니다. 이제는 회고 없으면 안돼요.
아쉬운 점도 물론 있으시겠죠?
강태화 : 하려는 서비스가 많은데 리소스가 부족해요. 더 많은 분들이 오셔서 같이 제품을 만들었으면 좋겠어요.
어떤 분이 저희랑 잘 맞을까요?
강태화 : 자율적이고 주도적으로 일하기를 즐거워하시는 분이요. ‘내가 해야 할 일을 누가 알려주겠지’라는 분 보다는 ‘내가 이걸 해야겠다, 만들어봐야겠다’며 팀 플레이어로 함께 만들어가는 것을 좋아하는 분이면 잘 맞을 것 같아요.
이민구 : 스스로 목표를 설정하고 이루기 위해 달리는 분이라면 누구나 환영입니다. 업무가 내려오길 기다리는 분이라면 만족하지 못하실 것 같아요. 의견 개진을 적극적으로 하고, 스스로 개척하는 역량을 요구하는 곳이라고 생각해요.
저희 팀분들을 보면 다 각기 다른 강점과 관심사가 있어요. UI디자인에 관심 있는 분, 웹 기술에 관심 있는 분 등등 다양한데, 그 분만의 강점이 있는 분이 오셨으면 좋겠어요. 그 분의 강점이 저희 조직에 녹아서 시너지가 날 수 있는 분이요.
지원을 망설이고 있는 미래의 동료분께 한 말씀 드린다면?
이민구 : 개인적으로 회사를 고려할 때에 가장 중요한 키워드가 ‘성장’이라고 생각해요. 내가 여기서 성장할 수 있을까에 대한 질문을 끊임없이 하거든요. 어떤 작가가 그러더라고요. 본인이 쓴 글을 다시 되돌아 봤을 때 부끄럽지 않다면 성장하지 않은 거라고.. 최근에 6개월 전에 쓴 코드를 다시 봤는데, 부끄럽고 아쉬움이 많이 남았어요. 왜 이런 선택을 했을까? 아마 그 당시에는 최선의 선택이었고, 그 때보다 제가 성장했다는 반증이기도 하겠죠. 성장에 대해 고민하고 계신 분이라면 꼭 오셨으면 합니다. 웹 개발 측면으로 보면, 시장에서 보이는 React 관련 최신 기술을 다 써보고 있다고 자신있게 말씀 드리고 싶어요.
강태화 : 리멤버에 맞는 분이라면 ‘성장’을 중요시하고, 커리어에 대해 항상 고민하는 분이라고 생각해요. 성장에 대한 갈망이 있는 분이라면 혼자가 아닌 좋은 동료와 어떻게 하면 더 잘할 수 있을지에 대해 함께 고민할 수 있어요. 그런 분들이 지원해주시면 좋을 것 같습니다.
인터뷰 진행: 김담형 (Server/Web 팀)
인터뷰 정리: 인수진, 정혜경 (People 팀)
사진 촬영: 전진형 (Marketing&Communication 팀)