2023. 4. 7. 19:00ㆍ두브레인 멤버 이야기
두번째 두브레인 멤버 이야기의 주인공은 두브레인 공동창업자이자 CTO 시바입니다.
피플팀 : "안녕하세요 시바, 그동안 어떤 일을 하셨고 또 지금은 어떤 일을 하고 계신 지 소개해주세요."
시바 : "항상 같은 일을 해왔던 것 같아요. 두브레인에서 기획하는 앱을 개발하고 있습니다. 초반에는 서버 개발부터 앱 개발까지 모두 했어요. 지금처럼 본격적인 서버 개발은 아니고 프로토타입에 필요한 스펙 수준이었죠. 이제 서버 개발은 다니엘, 웹 개발은 주디, 컨텐츠 개발은 앨런, 한아께서 해주고 계시구요. 지금은 철수와 함께 클라이언트 개발을 하고 있습니다. 또 다양한 개발 역할 접점에서 일이 원활히 돌아가게 소통하고, 개발 우선순위를 고민하고, 채용에도 참여하고 있습니다."
피플팀 : "시바께서는 어떻게 두브레인과 함께 해야겠다고 결심하게 되셨나요?"
시바 : "지니가 영리하다는 생각을 많이 해요. 2015년 벤처경영 전공 수업에서 지니를 처음 만났어요. 두부스쿨* 프로젝트 시작하기 전이었습니다. 저도 그 당시 창업에 뜻이 있어서 벤처 경영 전공 수업을 들었어요. 창업 아이템을 선정하고 사업 계획서를 쓰는 것이 대부분의 프로젝트였구요. 대학생들이라 큰 기대를 하기 어렵다고는 생각했지만, 그래도 진심으로 창업에 뜻이 있는 사람을 수업에서 만날 수 있지 않을까 하고 기대했어요. 그런데 생각보다 그런 사람이 없었습니다.
그러던 중에 지니와 함께 프로젝트를 하게 되었는데, 그 때 지니가 정말 눈에 띄었어요. 교수님께 날카로운 질문도 서슴없이 하구요. 또 교수님이 창의력을 수치화할 수 있는 검사 도구를 만드신 분이라 수강생 대상으로 검사도 하셨는데 지니가 만점에 가까운 수치를 받았어요. 교수님도 처음 보는 수치라고 하시더라구요.
하루는 창업에 뜻이 있어서 수업을 듣는데 생각보다 창업에 진심인 사람이 없다고 지니에게 털어놓았는데 지니도 엄청 공감했어요. 당시에 저는 구체적인 창업 아이템이 있었던 것은아닌데그때도지니는두부스쿨의모태가된아이들의 문제에 집중하고 있었구요.
저는 개인 사정으로 반 년 정도 떠나있다가 모카보다 살짝 늦게 2017년 여름 합류했는데요. 떠나있는 동안 학교 수업을 들으면서, 혼자서 무엇인가 이뤄내는 것이 어렵다는 것을 뼈저리게 느꼈습니다. 두부스쿨을 준비할 때는 동료들과 함께 몰입해서 무엇인가 이뤄낸다는 든든함이 있었는데, 혼자서 처음부터 시작하는 건 어렵더라구요. 어려움을 느끼던 차에 마침 지니가 연락을 해왔고, 두브레인에 합류하게 되었습니다."
*두부스쿨 : 두브레인 앱의 전신이 된 프로젝트. 아이들의 인지 발달을 자극할 수 있는 교재를 PDF 형태로 제작했다.
피플팀 : "어떤 계기로 창업에 관심을 가지게 되셨나요?"
시바 : "히스토리가 좀 중구난방이긴 한데요. 원래 의류학과 전공으로 패션 디자이너를 제대로 해보려는 마음이 있었어요.
지금 생각해보면 재능이 있던 것은 아니었던 것 같은데 막연하게 ‘패션 디자이너를 하려면 제대로 해야지, 제대로 하려면 어떤 공부를 해야 할까. 3대 디자인 스쿨인 미국 파슨스 스쿨, 영국 세인트 센트럴 마틴, 벨기에 앤트워프 왕립예술학교 중에 하나를 가야 하지 않을까?’ 생각했어요. 유학 가려면 돈이 필요한데 부모님께 손을 빌리기에는 너무 큰 돈이라 막연하게 돈을 벌어야겠다고 생각 했어요. 그래서 창업을 배워봐야겠다 싶어 벤처 경영 전공 수업을 듣기 시작한거죠.
벤처 경영이 컴퓨터 공학, 경영, 경제 등 여러 전공이 섞인 연합 전공이라서 전공 수업 중에 개발 수업이 있어서 듣게 되었어요. 그런데 개발이 너무 재밌었는 거예요. 정말 너무 재밌어서 디자이너 말고 개발자 해야겠다고 진로를 확 바꾸게 되었습니다. 그러던 중에 지니와 만나게 되면서 창업까지 아이디어가 발전하게 됐네요."
피플팀 : "의류학과 전공이셔서 디자이너 꿈을 가지고 계셨다고 하셨는데 마침 전공에 남은 미련은 없으신가요?"
시바 : "오, 전혀 없습니다. 의류학과에서도 재능이 있어서 디자이너 꿈을 꿨던 것은 아니거든요. 고등학교 때 친해지고 싶었던 친구가 패션에 관심이 많았어요. 저는 패션 쪽에 문외한인 이과생이었구요. 정말 특이한 친구였는데 저는 그 친구가 멋있더라구요. 그래서 의류학과에 입학했는데, 일반적으로 생각하는 의류학과 달리 의류 소재가 메인이라 이과생들이 많은 곳이거든요. 전공 수업도 패션 마케팅, 디자인, 의류 소재로 나누어져 있는데, 저는 디자인 쪽으로 전공 수업을 몰아 듣고 패션쇼까지 하게 되었어요.
그런데 제가 본능적으로 좋아할 수 있는 일이 아니었나봐요. 고생해서 만든 결과물을 보며 기분은 좋은데 그 과정에서 몇 번을 뒤집고 다시 처음부터 만드는 게 너무 괴롭더라구요. 과정이 재밌었다면 버텼을텐데 말이죠. 개발을 해보고 나서 깨달았습니다. 개발은 코드를 쓰는 모든 순간이 즐거운데, 패션디자인은 그렇지 않았던거예요."
피플팀 : "두브레인에 처음 합류하셨을 때 어느 정도 함께 하겠다고 염두에 두신 기간이 있으신가요?"
시바 : "기간을 염두에 두진 않았습니다. 회사에 좋은 분들이 합류하고 계시는 걸 보면서 항상 고민을 해요. ‘내가 충분히 기여하고 있나? 내가 단지 창업 멤버라는 이유로 총괄하는 역할을 맡고 있는 것 아닌가?’ 생각합니다. 제가 기여하지 못한다고 느끼는 순간에 떠날 것 같습니다."
피플팀 : "시바께서 생각하시는 동업자 지니와 모카는 어떤 분이신가요?"
시바 : "지니는 항상 아이디어가 샘솟아요. 발산형 사고에 능하고, 사람 보는 눈이 좋고, 사람을 끌어당기는 매력도 있어요. 한편으론 순수하고, 다른 한편으론 지치지 않는 열정이 있어요. 부러운 능력이에요. 지니의 능력 덕분에 좋은 사람들과 좋은 사업을 영위하게 되었다고 생각하구요. 반대로 지니는 수렴적 사고, 논리적 사고, 수학적 사고, 최적화 같은 사고 같은 것들에 강하지는 않은데요.
그런 사고들은 모두 모카의 강점이에요. 저도 모카랑 비슷한 사람이라고 생각하는데, 모카는 저보다 전체를 보는 시야가 강한 것 같아요.
같이 오래 일할 수 있는 건 두 사람 다 선하고, 겸손하고 결과로 말하기 때문이에요. 그런 의미에서 존경하는 사람입니다."
피플팀 : "시바께서 생각하시는 지금의 두브레인 동료들은 어떤 분들이신가요?"
시바 : "사실 모카의 생각과 크게 다르지 않아요. 모카가 21년 생일행사에서 ‘지금의 최고의 멤버구성이다’ 라고 말씀하셨을 때도 동의했었어요. 그런데 그 이후로도 계속 좋은 분들이 입사하고 계시잖아요.
하루는 주이께 왜 회사에 다니시는지 여쭤본 적이 있어요. 주이와 오래 일하고 싶은데, 왜 회사를 다니시는지 이유를 알면 회사에 오래 묶어둘 수 있지 않을까 생각이 들어서 그랬죠.😅 그런 걸 보면 지니가 사람 보는 눈이 좋다고 또 생각하게 되는 것 같아요.좋은 자극을 받을 수 있는 훌륭한 분들과 일하고 있다고 생각합니다."
피플팀 : "시바께서 말씀해주신 ‘좋은 분’ 은 어떤 역량이나 태도를 가진 동료인가요?"
시바 : "결과로 이야기하는 사람을 좋아합니다. 두브레인엔 결과로 보여주는 훌륭한 역량을 가진 분들이 많이 계시다고 생각해요. 결과로 얘기하는 분들은 결과를 만들어 내기 위해 적극적이세요.
또 결과로 중심으로 얘기하면 과정에서 생긴 마찰이나 감정적인 소모 같은 부차적인 요소보다 결과를 만드는 핵심에 집중하시구요. 다시 말하면 두브레인에 역량과 성과로 말하는 사람이 많다고 느끼는 것 같습니다."
피플팀 : "시바께서는 생각을 글로 정리하시는 데 탁월한 능력을 가지고 계시다고 느낀 적이 몇 번 있습니다. 동료들에게 글로 생각을 전해야 할 때 적용할 수 있는 시바만의 비법이 있으신가요?"
시바 : "탁월한 능력이라기 보단 시간을 많이 써요. 심플하게 핵심만 이야기하는 것이 중요하다고 생각하는데, 제 글은 장황한 것 같기도 합니다."
피플팀 : "장황하지 않습니다. 긴 것과 장황한 것은 달라요!"
시바 : "그렇게 생각해주셔서 감사합니다.😀 제가 생각을 말로 전달하는 것을 어려워해요. 스스로 그렇게 느끼다보니 생각을 글로 정리하고, 전달하고자 하는 내용이 제대로 써졌는지 시간을 들여서 여러 번 읽고 검토합니다. 경우에 따라서 구두로 전하는 것이 더 빠르고 효과적일때도 있겠지만, 복잡하거나 어려운 문제일 수록 글로 전달하는 것이 효과적인 것 같아요."
피플팀 : "시바께선 가장 큰 동기부여를 받는 순간은 언제인가요?"
시바 : "좋아하는 일을 할 때 동기부여가 돼요. 앞서 말씀드렸듯이 개발하는 과정이 즐거워요. 코드를 짜는 동안 몰입해서 시간 가는 줄도 모르구요.
시간이 지나면서 점점 코드를 쓰는 것보다 깊은 고민을 해야 하는 시간이 길어졌어요. 고민을 할 땐 또 시간이 잘 안간다고 느껴지기도 해요. 외부적으로는 주변 사람들에게서 자극을 많이 받아요. 동료가 어떤 일을 잘 해내면 ‘나는 지금까지 뭐했지?’ 라고 생각하게 돼요. 외부의 CTO나 개발자 친구들 만나서 이야기하다가도 자극 받구요. 사실 제가 개발적으로 넘볼 필요가 없는 영역도 있을 텐데 말이죠. 그럼에도 ‘내가 지금 이래도 되나?’ 라고 생각하게 되더라구요."
피플팀 : "지금까지 두브레인과의 시간을 돌아보실 때 가장 기억에 남는 성취는 세 가지를 꼽으신다면 어떤 것인가요?"
시바 : "첫 번째는 두부스쿨 프로토타입을 처음 만들었을 때예요. 그 전에도 수업에서 개발 프로젝트를 해봤지만, 실제 비즈니스 로직을 반영해서 돌아가는 앱을 만든 건 처음이었습니다. 그 때는 정말 아무것도 몰랐어요. 어설프게 안드로이드 개발을 조금 해봤었고, iOS 개발은 전혀 경험이 없었습니다.
앱을 만들 생각이니까 단순하게 안드로이드 먼저 개발하고 iOS도 공부해서 개발하면 되겠지 생각하고 곧바로 개발부터 시작하고 있었는데, 그 모습을 보시고 다른 회사 대표님이 네이티브 개발보다는 유니티 같은 툴이 더 적합하지 않겠냐고 하셨어요. 당시 유니티라는 툴이 있는지도 처음 알았었는데, 저희가 딱 필요한 툴인 것 같더라고요. 그래서 그렇게 유니티로 첫 번째 프로토타입을 만들게 되었죠. 이때의 결정 때문에 저희 회사가 지금까지 유니티를 쓰고 있습니다.
두번째 기억에 남는 성취는 리팩토링으로 앱 전체 설계를 개선했을 때입니다. 제가 두브레인에서 가장 임팩트 있는 성과를 낸 것이 바로 이 리팩토링이라고 생각해요. 반 년 이상 작업을 했던 것 같은데,이 작업이 사실 겉보기에는 많은 시간만 소요하고 큰 효과가 없는 것처럼 보이지만 사실 두브레인의 개발 생산성에 큰 영향을 미치고 있습니다.리팩토링 이전에는 소위 스파게티 코드라고 해서 개발을 하면 관련없는 곳에서 이슈가 튀어나오곤 했어요. 그러면 뭔가를 추가적으로 개발하는 것 자체가 굉장히 부담스럽고 테스트에도 많은 시간을 써야 하거든요. 이렇게 되면 개발 주기가 점점 길어지는데 또 비즈니스 일정은 맞춰야 하니까 장기적인 관점에서는 부적절한 꼼수들을 많이 쓰게 되면서 이 개발 환경이 점점 더 안 좋아집니다. 가면 갈수록 생산성이 안 좋아지면서 나중에는 정말 뭐 하나 쉽게 개발하기 어려운 환경으로 변해요.
그래서 이런 개발 환경을 개선하려고 시간이 많이 들더라도 앱 전체 설계를 개선했습니다. 개발 생산성도 좋아졌지만 좋은 설계란 무엇인가에 대해서 많이 이해할 수 있었던 시간이었어요.
세 번째는 맞춤수업 출시예요. 맞춤수업 출시는 애자일한 개발에 대해서 더 깊게 이해하게 해주었어요. 맞춤수업 출시는일정을정확히준수했어요.정확히지킬수있었던 것이 애자일한 개발 덕분이었거든요. 물론 맞춤수업 개발 이전에도 저희의 개발 방식이 워터폴 방식이 아니라고 하긴 했지만, 실은 지금 생각해보면 워터폴의 성격이 많았어요. 기획이 나오고, 개발하고, 수정하고, 배포하는 식이죠. 맞춤수업을 개발할 때는 개발하는 중간 중간에도 배포가 가능하도록 만들었어요. 좀 더 구체적으로 설명드리자면 맞춤수업의 두 가지 Key Feature가 ‘보호자 설문’과 ‘맞춤수업’ 이었어요. 두 가지 요소는 서로에게 영향을 주는 긴밀한 요소이기도 하죠.
워터폴 개발이었으면 유기적으로 연결된 두 피쳐를 모두 기획할때까지기다려서두요소모두개발을하고,QA를 하고 배포를 했어야 했어요. 반면 애자일 방식으로 개발하면서는 보호자 설문만 개발하고도 배포가 가능한 구조가 되었어요. 물론 저희가 보호자 설문만 출시하는 건 그다지 의미 없다고 생각했겠지만 기술적으로는 배포가 가능한 상태를 만들었습니다. 이게 굉장히 중요해요.
만약 저희가 보호자 설문과 맞춤수업을 유기적으로 연결 시켜서 개발하는 중이었다면 갑자기 저희가 보호자 설문만이라도 내야겠다는 의사 결정을 해도 두 기능이 모두 개발될 때까지 기다려야 합니다. 변화된 비즈니스 환경에 기민하게 반응하지 못하는 거죠.
반면 애자일한 개발에선, 전체 기획엔 유기적으로 연결됐었던 두 기능을 의존성이 없도록 기획을 조금 변경해서 보호자 설문만 먼저 개발한 뒤, 맞춤수업이 추가될 때 잠시 변경했던 기획을 다시 기존 기획에 맞게 의존성을 포함시켜 개발했습니다. 이렇게 기능들을 작게 쪼개서 우선순위가 높은 것마다 하나씩 반영하되 배포 가능한 상태를 유지하면서 개발합니다. 이런 방식으로 개발하면 일정 기한이 왔을 때 배포는 개발적으로 가능/불가능한 상태가 기준이 아니라 우선순위 높은 것들이 충분히 반영되었는지가 의사 결정의 기준이 됩니다. 맞춤수업 개발을 통해 이런 방식이 애자일한 방식이구나 하는 걸 더 잘 이해하게 됐어요."
피플팀 : "시장의 다양한 앱의 종류만큼 다양한 개발 특성이 있을 것이란 생각이 드는데요. 두브레인 앱 개발만이 갖는 특수성이 있을까요?"
시바 : "일반적으로 앱 카테고리마다 비슷한 성격을 공유하죠. 두브레인 앱도 크게 보면 아동 교육 앱,게 임 앱이긴한데요. 두브레인만의 특수성은 컨텐츠가 많은데, 컨텐츠마다 유사성이 굉장히 적다는 것에 있어요.
제가 맞춤수업을 기억에 남는 성취로 말씀드렸는데요. 맞춤수업은 비슷한 요소 없이 저마다 다른 로직을 가지고 있어요. 그 로직에서 산출된 데이터를 가지고 적절한 난이도에 맞춰서 수업을 추천해주어야 하는데, 그조차도 수업마다 다 달라요. 컨텐츠를 많이 개발해야 하는 경우 일반적으로 비슷한 포맷을 공유한 채로 약간의 차이점을 가지고 컨텐츠를 생산해낼 텐데요. 두브레인은 그런 환경이 아니다보니, 컨텐츠 개발에 많은 리소스가 필요하죠. 이런 환경에서 리소스를 잘 관리하고 만족스러운 개발 환경을 만드는 데 고민과 시행착오가 많았는데요.많이 고민한 덕분에 지금은 괜찮은 환경이 됐다고 생각합니다."
피플팀 : "개발자 입장에서 두브레인과 함께 할 수 있는 원동력은 무엇이라고 생각하시나요?"
시바 : "개발자로서는 운이 좋다고 생각해요. 만약 다른 회사보다 비전과성장을자극할수있는요소가없었다면이렇게오랜 기간 함께하지 못했을 거예요. 두브레인에는 저에게 계속 성장을 위한 자극을 주는 동료들이 있고, 그 분들과 훌륭한 비전을 향해 나아갈 수 있다고 생각해요. 개발자로서도 다니엘 같은 경력을 가지신 분이 저에게 가감없이 조언을 해주시잖아요. 어느 곳에서도 얻기 어려운 환경이라고 생각합니다.
비즈니스 적으로도 크리스틴, 크레쏭 다들 훌륭하신 동료라 좋은 자극을 많이 받구요. 이보다 더 좋은 업무 환경이 있을까 생각하게 되는 환경이에요."
피플팀 : "CTO로서 두브레인에 기여하고 싶으신 목표가 있으실까요? 이전에 시바와 대화를 하면 CTO로서 현업 개발 외의 기여도 고민하셨었는데요."
시바 : "상황은 이전하고 비슷해요. 얼마 전에 팀 스파르타 CTO 남병관님을 만났는데요. 팀 스파르타는 스타트업 단계로 보자면 두브레인보다 살짝 앞서 있더라구요. 그 분께서 CTO의 4가지 역할을 말씀해주셨어요. 방향 설정, 동기 관리, 역량 관리, 채용 이었는데요. 저도 CTO로서 기여해야하는 것들이 그 4가지에 있다고 생각해요. 다만 시기적인 문제는 있어요. 지금은 현업 개발로 더 많이 기여해야 하는 시기라고 생각하구요. 그 분도 얼마 전까지 현업 개발로 더 기여하고 계셨다고 하시더라구요."
피플팀 : "미래에 두브레인의 시간을 회고하실 때, 시바께서 회고에 꼭 남기고 싶은 성취가 있으신가요?"
시바 : "장기적으로는 비즈니스가 계속 확장하더라도 그에 맞게 개발팀의 규모도 쉽게 확장 가능하도록 토대를 잘 만들어두는 것이 가장 중요하게 기여해야 하는 부분인 것 같아요. 좋은 개발 품질을 유지하면서 계속 애자일한 환경을 유지할 수 있도록 다양한 장치들을 마련해두고, 새로운 프로젝트를 진행하더라도 이런 것들이 잘 전이될 수 있도록 하고 싶습니다."
피플팀 : "두브레인에 합류하는 것을 고민하시는 분들, 특히 개발자 분들께 어떤 말씀 해주고 싶으신가요?"
시바 : "저희 회사에 들어오면 자주 듣게 되는 말이 있습니다. ‘기능을 구현하는 것은 누구나 할 수 있지만 좋은 코드를 쓰는 것은 굉장히 어렵다.’ 요즘 같이 개발을 쉽게 할 수 있는 때가 없는 것 같습니다. 개발 커뮤니티가 많이 활성화 되면서 좋은 논의가 시작되기도 하고 다양한 솔루션들이 나오는 것은 좋지만 그만큼 수준 낮은 코드와 잘못된 접근들에 대한 내용들도 무분별하게 생산되고 있는 것 같습니다. 이런 내용들을 기반으로 ChatGPT 같은 솔루션들은 학습을 하죠. ChatGPT도 기능이 돌아가는 코드를 만들어내는 건 쉽게 할 수 있습니다. 하지만 실제 상용 프로그램에서 쓸 수 있을 정도로 만들려면 ChatGPT 가 내놓는 코드를 그대로 쓰긴 어려울 겁니다. 프로그램 내 다른 모듈들과 잘 돌아갈 수 있는지, 실제 사용 케이스를 고려했을 때 성능적으로 괜찮은지, 우리 회사 개발자들이 잘 이해할 수 있는 코드인지, 장기적인 유지/보수 측면에서 충분히 괜찮은 코드인지 등을 고려하면서 더 좋은 코드로 만들어야 합니다.
기능을 구현하는 걸 목표로 하는 개발자는 ChatGPT 도 할 수 있는 걸 하는 수준의 개발자입니다. 훌륭한 개발자가 되려면 좋은 코드를 쓸 수 있어야 합니다. 두브레인에는 훌륭한 개발자 분들이 많이 있습니다. 두브레인은 훌륭한 개발자 분들과 함께 더 훌륭한 개발자가 되고 싶은 분들과 일하고 싶습니다."
'두브레인 멤버 이야기' 카테고리의 다른 글
두브레인 멤버이야기#004_라두(피플팀 리드, 운영 총괄) (0) | 2023.06.27 |
---|---|
두브레인 멤버이야기#003_크리스틴(연구팀 리드) (0) | 2023.05.08 |
두브레인 멤버이야기#001_모카(Co-Founder) (0) | 2023.03.31 |