지난 8월 26일, IT 기술 교육 플랫폼 인프런이 개최한 인프콘 2022에 당근마켓도 참여했어요. 행사 준비부터 진행까지, 모든 과정을 당근마켓 개발자들이 참여했는데요. 인프콘 2022 당근마켓 부스에서 가장 인기 있었던 코너 “당근마켓 개발자에게 무엇이든 물어보세요” 10문 10답을 전격 공개합니다!
당근마켓이 어떤 문화에서 일하고 있는지, 어떤 고민일지 궁금했던 분들은 놓치지 마세요 😉.
당근마켓의 개발 문화 관련 질문이 가장 많았어요. 수평적인 문화에서 어떻게 효과적으로 엔지니어끼리 소통하는지, 새로운 기술은 어떻게 회사에 적용하는지, 회고 문화는 어떤지 등 당근 마켓 개발자들이 일하는 배경과 문화에 대해 가장 많이 궁금해하시더라고요.
모든 개발자의 고민일 텐데요. 어떻게 빠르게 성장할 수 있는지, 동료가 없는 환경에서 어떻게 성장할 수 있는지 등 고민을 같이 나눴어요. 당근마켓 개발자들도 항상 하고 있는 고민이기 때문에, 정답을 얘기한다기보다는 서로의 생각을 나누며 고민의 무게를 조금 덜어낼 수 있었어요.
회사 내에서 개발자가 충분히 많지 않거나 스스로 역량이 부족하다고 생각해 고민이신 분들이 많았어요. 비전공자로서 개발자로 어떻게 성장하고 커리어를 이어갈 수 있을지 고민을 나눠주신 분들도 계셨어요.
당근마켓이 사용 중인 기술 스택에 대해 구체적으로 질문해주신 분들도 계셨어요. 예를 들어, 당근마켓에서 사용하는 gRPC라는 기술 스택이 왜 좋은지 여쭤보시고 자신의 회사에도 도입하는 게 좋을지 고민하신 분도 계셨어요. node 생태계에서 코틀린으로 전향한 사례에 대해 구체적으로 물어보신 분도 계셨고요.
*현장에서 나온 질문을 토대로 편집한 것이며, 당근마켓 개발자 4명 답한 내용을 기반으로 작성되었어요.
Q1. 코드 리뷰에서 경력이 오래된 개발자의 코멘트가 부담스러워요. 코멘트가 달리는대로 반영하고 있는데 괜찮은지 고민이에요. 당근마켓의 코드리뷰 문화는 어떻게 되나요?
A. (Carter) 제가 속한 서비스코어에서는 Pn 룰을 적용해서 피드백하고 있어요. P1부터 P5까지 있고, P1이 중요하고 꼭 반영되었으면 하는 점, P5은 꼭 반영하지 않아도 되는 피드백으로 정해두고 소통하는 거예요. 이렇게 피드백하면 직급이나 연차에 따라 생길 수 있는 부담감을 덜어낼 수 있어 좋은 방법이라고 생각해요.
A. (Peter) 코드리뷰 자체가 팀 안에서만 이루어지지 않고 다른 팀과도 교류가 이뤄진다는 것도 좋은 문화인 것 같아요. 예를 들어, 저희 팀 코드를 다른 팀 개발자에게 리뷰를 부탁할 때도 있고 반대의 경우도 있거든요. 또 목적 조직의 팀이 아닌 직무 조직인 챕터에서도 매주 밋업을 통해서 기술 공유를 하며 코드리뷰 문화를 만들어가고 있어요.
Q2. 현재 다니고 있는 회사에서 개발 리드로서 개발문화를 만들려고 하는데요. 당근마켓이 좋은 개발문화를 가지고 잘 이어가고 있다고 들었어요. 어떤 문화가 있고 어떻게 유지하나요?
A. (Steve) 당근마켓은 스스로 성장하고자 하는 욕구가 강한 분들을 모시고 있어요. ‘나보다 더 뛰어난 동료’를 채용하자는 채용 원칙도 가지고 있고요. 그래서인 지 당근마켓에는 지식을 공유하고, 서로 도우며 성장하려는 성향의 분들이 많아요. 매주 목요일에는 ‘엔지니어링데이’ 라는 이름으로 파트별 엔지니어링 지식을 공유하는 시간을 갖고 있어요. 또 구성원들이 자발적으로 스터디를 만들기도 해요. 더 좋은 방식이 있다면 자유롭게 전체 개발자 채널에 의견을 제안하기도 하고요. 시스템과 제도만으로는 이런 문화를 만들기 어렵다고 생각해요. 스스로 성장에 대한 강한 동력이 있는 분들이 모이는 것 자체가 문화라는 생각이 들어요.
Q3. 당근마켓에서는 팀과 상관없이 개발자들끼리의 커뮤니티가 있나요?
A. (Peter) 당근마켓은 챕터 단위로 같은 기술 스택을 쓰는 사람들끼리 교류하는 편이에요. 예를 들어, 저는 부동산팀에 소속되어 있으면서 NodeJS Server 챕터 소속이거든요. 목적조직의 팀에서 일하면서 생길 수 있는 단점을 보완하기 위한 조직 구조인데요. 실제로 저는 지금 부동산팀에서 혼자 백엔드로 일하고 있지만, 제가 개발 중 챕터에 도움을 요청하면 다른 개발자들이 많이 도와주시기도 해요. 그래서 혼자 일하고 있다는 생각은 들지 않는 것 같아요. 기억에 남는 에피소드로는 제가 입사하고 나서 해결해야 하는 어려운 과제가 있었는데, 특정 서버를 담당한 서로 다른 팀의 개발자들이 모여서 도와줬던 기억이 나요. 저도 그때 같이 참여해서 그 문제를 함께 해결했는데, 팀과 상관없이 일해봤던 재밌는 경험이었어요.
Q4. 입사 한 달차 개발자입니다. 경력이 없는 상황에 입사한 후, 회사에서 잘하고 있는지 스스로 의심이 돼요.
A. (Carter) 저도 당근마 켓이 첫 회사고, 입사한 지 얼마 되지 않아서 공감이 돼요. 하지만 당장 개인의 역량으로 회사 전체에 큰 임팩트를 주는 성과를 내기에는 어려운 시기 아닐까요? 먼저 회사에 적응을 하는 게 좋을 것 같고, 이런 고민을 동료나 리더와 나누다 보면 팀과 함께 성과에 기여할 수 있게 될 거예요. 저도 이런저런 고민이 들 때마다 리더와의 1:1 미팅을 통해 고민을 솔직하게 나누고 있어요. 혼자 고민하기보다는 동료나 리더와 함께 이야기하다 보면, 회사에도 스스로의 커리어에도 긍정적인 방향으로 기여하며 성장할 수 있을 거라고 믿어요.
Q5. 막 개발자가 되었는데요. 개발자들의 비동기 의사 소통 방식이 조금 답답하다고 느껴져요. 다른 분이 결정해주기 전까지 작업이 중단되기도 하는데, 얼마나 기다려야 하는 게 일반적인지 궁금해요.
A. (Ethan) 추측해보건대 질문의 답변을 기다리는 상황에서 개발의 흐름이 끊기는 게 가장 답답하지 않을까 싶어요. 저도 그런 고민을 한 적이 있어 공감되는데요. 저는 현재 진행 중인 업무가 얼마나 중요한 업무인지 파악하는 것부터 시작하고 있어요. 중요한 업무였다면 기한 내에 빠르게 해결하기 위한 모든 수단을 동원할 테고, 크게 중요하지 않은 업무라면 결정이나 답변이 조금 늦더라도 잠시 미뤄두고 다른 업무를 처리할 수 있으니까요. 기다리는 시간을 스스로 정해보는 것도 좋을 것 같아요. 저는 한번 시작한 업무에 대해 기다리는 시간을 최대 2일로 잡고 있어요.
추가로 다른 분에게 결정을 위임하는 질문을 할 때는 그 결정이 어떤 업무들과 연결되는지, 어떤 업무의 진행을 어느 기간 막고 있는지 등 정보를 공유하는 편이에요. 그래야 질문을 받는 입장에서도 답변을 얼마나 빠르게 해줘야 하는지 알 수 있거든요.
Q6. 신입 개발자가 알아야 할 개발 지식은 어느 정도인가요? 당근마켓에 함께 하기 위해서는 카프카, 마이크로서비스 같은 것을 알아야 할까요?
A. (Peter) 어떤 솔루션을 얼마나 잘 쓰냐는 중요한 거 같지 않아요. 중요한 것은 솔루션을 먼저 생각하기 전에 문제를 정의하는 능력과 해당 문제를 가장 잘 해결하기 위한 솔루션을 도출하는 능력이라고 생각해요. 당근마켓 개발자들이 자료나 발표를 공유하는 것을 보면, 대부분 어떤 문제를 어떻게 해결했다는 내용이에요. 해결해보고 싶은 문제를 찾고 그것을 기술적으로 어떻게 해결할지 고민해보는 연습을 많이 해보는 게 좋을 것 같아요.
저의 사례를 이야기해볼게요. 오늘 (인프콘 2022 행사 당일) 저희 당근마켓 부스에서 굿즈를 드리기 위해 사용한 룰렛이 있었는데요. 프로젝트를 하다보면 랜덤하게 사람을 뽑아야 하는 때가 자주 있는데, 그때마다 누가 만들어놓은 웹페이지에 있는 룰렛을 사용해왔어요. 그런데 매번 들어갈 때마다 같은 사람의 이름을 입력하는 게 귀찮더라고요. 그래서 한번 입력하고 URL을 복사하고 다음에 접속하면 같은 사람들의 이름이 미리 세팅되게끔 룰렛을 만들었어요. 제 개인 트위터에도 룰렛을 올리고 사내 몇몇 분들에게도 사용하라고 공유 드렸죠. 그런데 제가 모르는 사람들도 회사에서 발표자를 선정하거나 자리를 정할 때 등 룰렛을 많이 쓰시더라고요! 어떤 기능이 있었으면 좋겠다는 피드백을 받기도 하고 버그도 고치면서 인사이트를 많이 얻게 되었어요. 프론트엔드를 할 줄 몰라서 어설프게 만들었는데, 그 과정에서 얻게 된 기술적인 인사이트가 많았거든요. 솔루션에 대한 고민보다는 문제를 정의하고 해결하는 과정을 즐기는 게 중요할 것 같아요.
Q7. 개발자가 되고 싶은데, 어떻게 공부하면 될지 감을 잡기 어려워요.
A. (Steve) 제가 정답은 아니기에 참고만 해주시면 좋을 것 같아요. 제 경험을 공유해보자면, 저는 원래 기획자로 일하다 개발자로 직무를 바꾼 케이스였어요. 처음에는 혼자서 생활코딩 같은 강의도 보고 코드카데미 같은 웹사이트를 활용해서 공부했어요. 그러다 그 이상의 단계로 나아가는데 속도가 붙지 않는다고 느껴졌고 부트캠프를 활용했어요.
어떤 방식이든 몰입이 정말 중요하다고 생각해요. 저는 아침 8시부터 밤 12시까지 잠자는 시간 빼고, 개발만 생각하고 개발만 했던 것 같아요. 이동할 때도 개발 책만 보았…고요, 하하. 처음에는 의지가 필요했지만 어느 순간에는 일상이자 습관이 되었고, 학습에 있어서 가속도가 붙기 시작하면서 개발이 점점 더 즐거워졌어요.
Q8. 개발자로 성장하고 싶은데, 회사 내에 프론트엔드 다른 동료가 없이 혼자 개발하고 있어요. 어떻게 해야 성장할 수 있을까요?
A. (Steve) 내가 만들고 싶은 것을 만들어보면서 성장하는 것은 어떨까요? 개인적으로 새로운 기술을 학습하는 데 있어서 가장 좋은 방법은 만들면서 배우는 것이라고 생각해요. 기술을 이론적으로 학습하는 게 아니라, 필요에 의해 사용하면서 학습하고 적용하다 보면 지식을 이해하는 수준을 넘어서 스스로 체화할 수 있을 테니까요.
또 다른 개발자들의 코드를 보는 것도 추천해요. 유명한 개발자 분들이나, 회사들의 코드도 오픈소스로 깃헙에 공개되어있는 경우가 많거든요. 회사 내에 같은 프론트엔드 개발자가 없더라도, 다른 분들의 코드를 보면서 패턴이나 스킬을 배울 수 있어요. 또 그 코드들을 내 코드에 적용시켜 보면서 이런 방식이 왜 좋은지 체감해볼 수 있을 것 같아요.
Q9. 대학교를 졸업하고 작은 중소기업의 개발자로 꽤 오래 일을 해왔는데, 이직을 준비하려고 보니 무엇을 준비해야 할지 모르겠어요. 일단은 전공 지식을 다시 공부하고 있는데 어떻게 하는 게 좋을까요?
A. (Ethan) 저는 당근마켓이 두 번째 회사라서 다른 회사가 기대하는 이직자의 조건은 잘 모르겠어요. 다만 당근마켓 동료들을 살펴보면 ‘직면한 문제를 빠르게 해결하는 과정에서 적절한 기술을 선택하고 팀원들과 같이 문제를 풀어낼 수 있는 사람인가’가 중요한 것 같아요. 물론 전공 지식이 있다면 좋겠지만, 중요한 것은 ‘문제를 잘 해결할 수 있는가?’예요. 여러 회사를 옵션에 두고 이직을 준비하시는 거라면, 목표하는 회사의 채용 공고에서 그 회사가 가지고 있는 고민을 추측한 후 채용 공고에 적혀있는 기술 스택에서 어떻게 해결해 볼 수 있을지 고민해보는 건 어떨까요?
Q10. 당근마켓에 입사하고 싶어요. 당근마켓은 주로 어떤 기준으로 채용을 하나요?
A. (Steve) 당근마켓에서는 주도적으로 일하고 스스로 성장하면서 서로 도울 줄 아는 분들을 모시고 있어요. 사용자 가치를 가장 중요하게 생각하는 문화도 가지고 있고요. 이런 문화에서 함께 성장할 수 있는 분을 모시고 있어요.
또 당근마켓은 ‘나보다 뛰어난 동료와 함께한다’라는 것을 채용의 중요한 원칙으로 삼고 있는데요. 이게 꼭 객관적인 실력만을 말하는 것이 아니에요. 어떠한 한 부분이라도 나보다 뛰어난 분과 함께 할 때, 동료가 나보다 뛰어나다는 믿음과 그에 대한 신뢰와 존중으로 함께 성장할 수 있다고 믿거든요.
🚀당근마켓 개발자로 함께 성장하고 싶다면 여기를 눌러 여정에 함께해주세요!
뜨거운 열정이 가득했던 인프콘 2022 “당근마켓 개발자에게 무엇이든 물어보세요” 10문 10답은 여기까지예요. 당일 행사장에는 아쉽게 오지 못했지만 당근마켓의 개발문화가 궁금했던 분들에게 도움이 되었기를 바라요!
당근 개발자에 대한 모든 것