[스타트업人] “실수는 할 수 있다. 다만, 반복하지 않을 뿐이다”, 테사 개발팀 이야기

[IT동아 권명관 기자] ‘스타트업人’은 빠르게 발전하고 성장하는 스타트업 속에서 일하는 사람의 이야기를 담고자 합니다. 정확히는 ‘그들은 무슨 일을 할까?’라는 궁금함을 풀고자 합니다. 많은 IT 기업이 ‘인재’를 채용하기 위해 치열하게 경쟁하고 있다는데, 정작 해당 인재는 그 기업에서 무슨 일을 하는지 궁금하잖아요. 예를 들어, 같은 부서, 같은 직함을 가진 구글의 인재와 페이스북의 인재는 똑 같은 일을 하고 있을까요?

여섯 번째로 만나는 ‘스타트업人’은 ‘테사(TESSA)’의 인프라 개발팀 서봉기 팀장과 서비스 개발팀 장세용 팀장입니다. 테사는 온·오프라인을 아우르는 ‘아트테크(Art-Tech, 예술과 재테크를 합친 단어)’ 플랫폼을 서비스하는 스타트업입니다. 블루칩(우량) 예술 작품을 구매해 소유권(지분)을 나눠 회원에게 판매하는데요. 수억 원~수십억 원에 달하는, 구매하기 부담스러운 고가의 미술 작품 소유권을 여러 명이 참여해 구매할 수 있도록 돕죠. 수백, 수천 명이 수십, 수백 명이 미술 작품을 분할 소유하기 때문에 억대가 넘는 작품도 소액(최소 1,000원)으로 투자해 구매할 수 있습니다.

미술품 분할 판매를 제공하는 테사는 일견 외부에서 봤을 때 서비스 업체라고 생각할 수 있는데요. 사용자에게 원활한 서비스를 제공하기 위해서는 그 뒤에 숨어 열심히 노력하고 있는 개발자가 있어야 합니다. 이에 테사의 두 개발 팀장이 어떤 고민을 안고 있는지, 서비스 제공을 위해 어떤 노력을 하고 있는지 소개합니다.

테사 인프라 개발팀 서봉기 팀장(좌)와 서비스 개발팀 장세용 팀장(우), 출처: 테사
테사 인프라 개발팀 서봉기 팀장(좌)와 서비스 개발팀 장세용 팀장(우), 출처: 테사

테사 속 개발팀 이야기

IT동아: 만나서 반갑다. 먼저 소개를 부탁드린다. 테사에 어떻게 합류했는지도 궁금한데.

서봉기 팀장(이하 서 팀장): 테사 인프라 개발팀에서 팀장을 맡고 있다. SI(System Integration) 업체에서 서버 개발자로 경력을 쌓았고, 이후 웹, 앱, 빅데이터 엔지니어링 등 다양한 업체에서 개발자로 일했었다. 테사에는 제일 처음 합류한 개발자다.

장세용 팀장(이하 장 팀장): 테사 서비스 개발팀에서 팀장을 맡고 있다. 반도체업체 테스트 엔지니어로 약 3년 동안 일했고, HTML5 등장 무렵 웹/앱 개발자로 전환했다. 이후 여러 스타트업에서 개발 책임자로 경력을 쌓았으며, 프리랜서 생활을 거쳐 테사에 입사했다.

IT동아: 테사 개발팀의 팀명은 한차례 바뀌었다고 들었다. 이유가 궁금하다. 그리고 각 팀의 담당 업무는 무엇인지 궁금하다.

테사 인프라 개발팀 서봉기 팀장(좌)와 서비스 개발팀 장세용 팀장(우), 출처: 테사
테사 인프라 개발팀 서봉기 팀장(좌)와 서비스 개발팀 장세용 팀장(우), 출처: 테사

서 팀장: 초기 테사 개발팀은 1팀과 2팀으로 나뉘어 있었다. 그러다 점점 서비스 규모가 커지고, 회원 수가 늘어나면서 보다 효율적인 업무를 위해 인프라 개발팀, 서비스 개발팀으로 바뀌었다. 인프라 개발팀은 서비스의 근간이 되는 플랫폼 인프라를 고민하고, 인프라 보안, 성능 최적화, 모니터링 등에 대한 기술을 조사 및 반영하는 업무를 담당하고 있다. 서비스 ‘안정화’를 전담하는 셈이다.

장 팀장: 일반적인 사용자는 (스마트폰) 화면만 보지만, 실제로는 보여지는 화면 뒤에 서버 간 많은 구성이 필요하다. 마땅한 비유는 아니겠지만… 호수 위에 떠 있는 백조의 모습은 우아해보이지만, 수면 아래 다리는 쉴 새 없이 물을 박차야 하지 않나. 그와 비슷하다.

‘이 구성을 어떻게 할 것인지’를 인프라 개발팀에서 담당한다면, 서비스 개발팀은 테사 앱에서 보여지는 모든 영역 즉, 서비스 전반을 개발한다. 소위 백엔드라고 하는 서비스와 프론트엔드라고 하는 앱/웹을 개발하고 있다. 인프라 개발팀이 뼈대라면, 서비스 개발팀은 살을 붙이는 과정이라고 할 수 있다.

IT동아: 테사에서 일하며, 기억에 남는 일이 있었을지.

서 팀장: 테사 앱을 처음 선보였을 때가 가장 기억에 남는다(웃음). 사업 초반이었을 때라 정말 몇 안 되는 인원끼리 밤새워 테스트하며 주요 기능 위주로 빠르게 만들어 앱을 런칭했다. 당시 회사 규모나 인력은 지금보다 많이 부족한 상황이었다. 때문에 블록체인(이더리움 네트워크)에 소유권 거래 이력을 기록할 때, 일일이 품을 들여 작업해야 했다. 수작업이라고나 할까(웃음).

블록체인 기록 과정에서 기록을 시도하고, 750초 이내에 완료 응답을 받지 못하면 재기록을 시도하는 방식이었다. 대표님과 CTO, 운영팀장 등 적은 인원이 밤새 돌아가면서 지켜봐야 했다. 문제가 발생할 때마다 다시 시도하고…, 테사가 앱으로서 첫 발을 내딛는 것이다 보니 많이 긴장하고 걱정했던 시간이었다. 지금은 블록체인을 클레이튼으로 이전한 상황이라 추억처럼 남아있는 시간이다.

테사 인프라 개발팀 서봉기 팀장, 출처: 테사
테사 인프라 개발팀 서봉기 팀장, 출처: 테사

팀명 변경 계기도 기억에 남는다. 테사 설립 초창기에는 완전히 분업할 수 없는 상황이었다. 뼈대와 살을 만드는 작업을 거의 동시에 진행해야 했는데, 당시에는 필요한 살이 더 많다 보니 아무래도 해당 작업에 조금 더 집중했었다. 하지만, 이제는 달라졌다. 서비스 회원 수도 10만 명을 넘어섰고, 엘포인트, NH은행 등 외부와의 협업 및 제휴도 활발해졌다. 때문에 뼈대를 더 튼실하게 정비해야 했다. 우리 서비스를 믿고 사용하는 회원들에게도 지속적인 신뢰를 드려야 하고… 그래서 팀명을 인프라 개발팀으로 변경하고 인프라 구축에 더욱 집중하고 있다.

장 팀장: 작년에 서비스를 MSA(Micro Service Architecture) 기반으로 전환한 것이 기억에 남는다. 처음 서비스였던 MVP(Minimum Viable Product, 최소 기능 요구치) 모델을 조금씩 수정해야 하는 상황었는데, 서비스를 계속 제공하면서 동시에 각 기능을 개선해야 하는 상황이라 적절한 개선 시기를 결정하기 어려웠었다. 그래서 서비스를 잘게 쪼갤 수 있는 MSA 전환을 선택했다.

여러 회원이 몰려 ‘판매’라는 한 가지 기능의 확장이 필요한 상황이라고 가정해 보자. 기존 MVP 모델은 서비스가 하나의 덩어리로 묶여 있어서 전체를 확장해야 했지만, MSA를 적용하면 ‘판매’라는 한 가지 기능만 확장할 수 있어 효율적이다. 비유하자면 각각의 기능별로 여러 방을 만들고, 필요할 때마다 방 크기를 늘이거나 줄일 수 있기 때문이다. 보다 유연한 대응도 원활하게 진행할 수 있고.

테사 서비스 개발팀 장세용 팀장, 출처: 테사
테사 서비스 개발팀 장세용 팀장, 출처: 테사

그렇게 작년 5월에서 7월 사이, 테사가 엘포인트와 협업했던 시기에 테사의 모든 시스템을 변경했다. 뼈대를 갈아치우는 작업인데다, 담당 인원은 4명뿐이라 정말 빠듯하고 힘들었던 시간이다(웃음). 그래도 당시 팀원들이 열심히 노력해준 덕분에 이전보다 보완된 기능을 제공할 수 있었다. 이 자리를 빌어 팀원들에게 고맙다는 말을 전하고 싶다.

계속 도전해야 하는 직업, 그게 개발자입니다

IT동아: 개발자로 여러 경험을 쌓아 오셨을 것 같다. 하지만, 그렇다고 고민이 없지는 않았을텐데.

장 팀장: 어느새 경력으로만 따지면 10년 이상 개발자로 일하고 있다. 하지만, 아직도 특정 기능에 대한 개발을 끝내고 나면 늘 아쉽다. ‘관련 지식이 조금만 더 있었더라면…’, ‘그 때 이 방식을 사용했더라면…’, 더 나은 결과를 낼 수 있지 않았을까라고 생각한다. 힘들게 설계하고 개발했는데 나중에 돌아보면 괜히 어려운 길을 돌아온 적도 있고, 새로운 기술은 계속해서 나오는데 어떻게 접목해야 하는지 모를 때 스스로 많이 부족하다고 느낀다. 그래서 항상 공부하는 자세를 유지하려고 한다.

테사 인프라 개발팀 서봉기 팀장(좌)와 서비스 개발팀 장세용 팀장(우), 출처: 테사
테사 인프라 개발팀 서봉기 팀장(좌)와 서비스 개발팀 장세용 팀장(우), 출처: 테사

서 팀장: 개발자라면 누구나 비슷하지 않을까 생각한다. 모든 직업이 그렇겠지만…, 특히 개발 직군은 평생 공부해야 하는 것만 같다(웃음). 서비스 에러나 장애가 발생하면 ‘왜 놓쳤을까’, ‘왜 못 막았을까’ 안타깝기도 하고, 아쉽고, 좀 섣불렀던 건 아닐까 싶어 걱정스럽고… 그렇다.

인프라를 담당하다 보니 자연스럽게 운영 프로세스에도 관심을 가질 수밖에 없다. 개발과 운영을 물 흐르듯 이어지도록 하는 것, 즉 데브옵스(DevOps, Development & Operation, 소프트웨어 개발 방법론의 하나로 개발과 운영을 결합한 혼성어, 개발 담당자와 운영 담당자가 연계해 협력하는 개발 방법론을 뜻한다)를 지향점으로 삼고 있지만, 아직도 아쉬운 부분이 많다. 그 지향점에 다다르고자 계속 노력하고 있다.

출처: 셔터스톡
출처: 셔터스톡

장 팀장: 데브옵스에 대해 첨언하자면, 데브옵스는 기법이 아니라 개발 방법론의 한 종류다. 개발에서 운영까지 얼마나 매끄럽게 이어지도록 조정할 수 있는지를 뜻한다. 여기서 중요한 점은 ‘우리가 개발했다’는 단편적 결말이 아니라, 개발자가 책임지고 자연스럽게 운영 환경을 만들어주는 과정이다. 운영팀이 서비스 회원들로부터 피드백을 듣고 개발팀에 요청하면, 개발팀은 이를 빠르게 수용하고 서비스에 반영해 회원들에게 개선된 사용자 경험을 제공하는 과정이다. 그렇게 유연한 사이클을 완성해 궁극적으로 사용자 친화적인 서비스를 만들어가는 것, 그게 테사의 목표다.

IT동아: 개발자로서 테사라는 조직에서만 경험할 수 있는 것이 있었을까?

장 팀장: 대외적으로 테사는 비즈니스 모델이 뚜렷한, 미술투자 플랫폼 서비스 업체다. 하지만, 개발팀에서 바라보는 관점은 조금 다르다. 새로운 기술을 꾸준히 연구해서 궁극적으로 서비스를 만드는 일에 집중하는, ‘기술 회사’에 더 가깝다. 테사에 합류한 이유이기도 하다. 실제로 개발팀 안에서도 새로운 시도를 계속 권장하고 있고, 개발자가 도전하고 성장할 수 있는 환경을 조성하고자 노력 중이다.

무엇보다 테사 개발자로서 가장 좋은 점은 실패를 탓하지 않는다는 점이다. 서비스를 상용화하기 전까지, 어떤 시도든 해볼 수 있다. 실패한 경험에서 무언가 얻을 수 있다고 생각한다. 그래야 더 나아질 수 있지 않겠나. 이건 경험담인데, 아이디어를 내고 시도할 때 “잘못될까봐 무섭고 위축된다”고 털어놓았더니, 대표님과 부대표님, CTO님 모두 “그럴 필요 없다”고 다독여줬었다. 책임감은 갖되 위축되지는 말라는 말이 인상깊었다. 테사가 추구하는, 테사만의 개발 문화라고나 할까.

서 팀장: 함께하는 동료, 사무 환경, 회사 규모 등에 따라 조금씩 다를 수 있겠지만…, 사실 어느 회사든 기본적으로는 다 비슷하다고 생각한다. 그래서 ‘이런 점에서 테사가 특별하다’고 과대포장하고 싶지는 않다. 다만, 테사는 개발 친화적인 조직이라는 건 사실이다. 새로운 도전에 보수적이지 않고, 블록체인 기반 서비스인 만큼 블록체인 응용 기술이나 NFT 활용 기술 등을 현장에서 다루고 있다. 미술품을 다루고 있으니 추후 가상 뮤지엄이나 가상현실(VR), 증강현실(AR) 등 독특한 경험으로 이어질 수도 있고.

테사는 서비스 회사 이전에 개발 회사 입니다

IT동아: 테사 일원으로, 그리고 개인으로 가지고 있는 목표는 무엇일지.

서 팀장: 누구나 바라는 이상향이겠지만, 회사와 가족 모두에 충실할 수 있는 사람이 되고 싶다. 가정에도 충분히 시간을 쓰고 싶은데…, 아이러니하게도 그러려면 테사 서비스를 지금보다 더 발전시켜야만 한다. 그래야 시간을 낼 수 있지 않나(웃음).

그래서 요즘 어떠한 서비스 형태가 테사에게 가장 잘 맞는 형태인지 고민하고 있다. 내부적으로 더 탄탄하게 기술을 검토해서, 시간이 지난 후 프로덕트를 돌아봤을 때, 조금 덜 후회하고 싶다.

더 큰 관점에서는 단순히 개발자에 머물기보다 테사의 비즈니스를 뒷받침할 수 있을 만큼 기술을 성장시키고 싶다. 관리적인 측면에서도 팀장으로서 더욱 성장하고 싶고…. 훌륭한 팀원들과 함께하는 것에 비해 아직 팀장으로서 사람을 관리하는 일에는 아직 좀 약한 것 같다(웃음).

테사 인프라 개발팀 서봉기 팀장, 출처: 테사
테사 인프라 개발팀 서봉기 팀장, 출처: 테사

장 팀장: 올해 아빠가 될 예정이다. 그래서 가족과 함께하는 시간을 더 늘리고 좋은 아빠가 되고 싶다. 그러기 위해서… 서 팀장과 똑 같은 말이겠지만, 개발 환경을 더 개선해 개발 이외 불필요한 일을 줄이고, 효율적으로 일할 수 있는 시스템을 마련하고자 한다(웃음).

기존 개발 환경은 필요할 때마다 전부 손으로 작업하는 시스템이라, 업무의 자동화 시스템을 만드는 것이 현재 가장 큰 목표다. 그렇게 되면 개발 환경 자체가 더 좋아지니 개발자도 좀 더 여유로워질 수 있고, 회사 안에서의 생활과 밖에서의 생활 모두 잘 누릴 수 있지 않을까 생각한다. 앞으로 새롭게 합류하는 개발자들도 훨씬 쉽게 적응할 수 있을 것이고.

IT동아: 테사 개발팀 동료로 원하는 인재상은 있을지.

서 팀장: 개발자마다 관련 경험, 지식, 기술 수준 등은 모두 조금씩 다르겠지만, 가장 중요한 것은 얼마나 자신의 일에 적극적으로 임하느냐라는 태도인 것 같다. 그런 점에서 테사 개발팀은 능동성을 지향한다. 테사는 ‘언제까지 끝내’라거나, ‘언제까지 뭐 갖고 와’라는 방식으로 일하지 않는다. 그런 만큼 본인의 일에 욕심낼 줄 아는 사람이어야 한다. 능동적으로 대처하고, 능동적으로 판단해, 능동적으로 행동해야 한다.

실수는 할 수 있다. 다만, 실수한 이유를 설명하고, 이를 보완할 수 있기를 원한다. 테사는 누가 실수했을 때 누구의 잘잘못인지 가리지 않는다. 그런 건 그 누구에게도 도움되지 않기 때문이다. 대신 원인 분석을 확실히 하고, 같은 실수를 반복하지 않도록 노력한다. 이게 테사 개발팀의 문화다.

테사 서비스 개발팀 장세용 팀장, 출처: 테사
테사 서비스 개발팀 장세용 팀장, 출처: 테사

장 팀장: 테사는 확실히 개발자 친화적인 분위기다. 키워드는 ‘스스로’ 할 수 있는 사람이다. 지금 개발팀의 3할은 프론트엔드 쪽이고, 나머지는 전부 백엔드 혹은 인프라를 담당하고 있다. 운영 과정에서 제일 크게 느낀 건, 팀원들이 각자 맡은 업무를 책임지고 본인의 창의성과 성실성을 발휘할 때 시스템이 제대로 굴러간다는 것이다. 그런 조직에서 가장 효율적으로 시너지를 낼 수 있는 사람은 스스로 생각하고, 문제를 찾으려 노력하고, 해결책을 찾아서 제시할 수 있는 사람이 아닐까 생각한다.

글 / IT동아 권명관(tornadosn@itdonga.com)

IT동아의 모든 콘텐츠(기사)는 Creative commons 저작자표시-비영리-변경금지 라이선스에 따라 이용할 수 있습니다.
의견은 IT동아(게임동아) 페이스북에서 덧글 또는 메신저로 남겨주세요.