brunch

You can make anything
by writing

C.S.Lewis

by 감자윤 Nov 16. 2021

RIDI의 리액트 네이티브
기술 도입과 PM의 역할

[코드스테이츠 PMB 8기] 7주차 Daily project (4)



전자책 서점으로 시작한 RIDI(이하 리디)는 현재 웹툰, 웹소설, 만화 등도 함께 제공하고 있는 서비스이다.

특히 최근 몇 년간은 전자 책보다 웹툰과 웹소설에 주력하는 모습이다.


이미지 출처 : 리디



리디는 2019년에는 개인화 추천 기반 애니메이션 스트리밍 서비스인 라프텔(Laftel)을 인수하고, 2020년에는 북미 시장을 공략하기 위해 웹툰 구독 서비스 만타(Manta)를 출시하기도 하였다. 


2009년에 시작된 이후 연매출이 계속 향상된다고 발표했지만, 실제 '흑자'로 전환된 것은 2020년 상반기부터였다. 결국 라프텔 인수 및 해외 진출 시도 등은 흑자 전환과 동시에 사업 확장을 통해 성장을 가속화하려는 리디의 의도가 아닌가 싶다.  






리디가 이렇게 신사업들을 시작하며 그와 함께 기술 스택 등에도 많은 변화가 있지 않았을까. 혹은 새로운 신기술을 도입했을 수 있다고 생각했다. 이에 리디의 기술 블로그를 통해 실제 리디가 도입하고 사용하는 앱/웹 개발 기술은 무엇인지 확인해 보았다. 





리디 신사업에 모두 도입한 'React Native' 프레임워크



리디의 기술 블로그에서 라프텔과 만타에 대해 찾아보니, 두 개의 신사업은 개발 기술적으로 공통점이 있었다. 바로 'React Native(이하 리액트 네이티브)' 프레임워크를 사용하기로 선택했다는 것이다. 



이미지 출처 : 인프런




'React Native'란?

앱 개발을 위해서는 본래 각 OS(안드로이드, iOS)에 맞게 개발이 따로 진행되어야 한다.(= 네이티브 앱) 그만큼 OS마다 각각의 고유의 특성을 갖고 있고 사용하는 프로그래밍 언어도 다르기 때문이다.

이에 어렵고 복잡한 앱 개발을 보다 효율적으로 하기 위해 여러 앱 유형과 개발 방법론이 나오기 시작했다.

그중 한 가지가 '크로스 플랫폼 앱(Cross-platform App)'이다.

크로스 플랫폼 앱은 하나의 프로그램 언어, 한 번의 개발로 iOS와 안드로이드 모두를 동작할 수 있는 개발방식으로, 앱 위주의 개발을 진행할 때 효율적으로 개발을 진행할 수 있다. 

그리고 이런 크로스 플랫폼 앱을 구현하기 위해 사용되는 대표적인 프레임워크 중 하나가 '리액트 네이티브(Reactive native)'이다. 



물론 클로스 플랫폼 앱(리액트 네이티브)은 네이티브 앱보다 성능은 떨어지지만 지속적으로 퀄리티가 향상되고 있다는 점에서 빠른 개발을 위해 리디가 선택하게 된 것 같다.


그런데 만타는 리디에서 직접 새롭게 출시하는 사업이었으나, 라프텔은 기존의 애니메이션 스트리밍 서비스를 인수하며 시작된 사업이었다. 그렇기에 라프텔은 이미 네이티브 앱으로 개발이 되어 있는 상태로써 기존 서비스에서 개선하는 작업만 해도 되었다. 결국 그만큼 두 서비스의 시작과 입장은 매우 달랐다는 것이다.


그럼에도 불구하고 이 두 신사업이 모두 리액트 네이티브를 사용하게 된 이유에는 공통점이 있었다.





리디가 신사업에 '리액트 네이티브'를 도입한 이유 (1)

적은 개발자 수와 채용의 어려움


리디는 내부적으로 개발자 인력 수는 많지 않았다고 한다. 


블로그 내용을 보면 만타팀에는 풀 스택 개발자 3명이 투입되고 있음을 확인할 수 있었다. 풀 스택 개발자는 프런트엔드, 백엔드 모두를 다룰 줄 알고 양쪽 이해도를 갖추고 있는 개발자로서 업계에서 매우 귀한 인력이라 개인적으로 알고 있다. 하지만 풀 스택 개발자만 있다는 것은 개발 업무가 그만큼 세분화되지 못하고, 인력이 상대적으로 부족하다는 의미가 될 수 있다.


실제 라프텔 인수 후에는 안드로이드, iOS 각각 앱 개발자를 채용하려 했으나, 지원자의 수도 적고 적합한 인재를 찾기가 어려웠다고 한다. 인력 채용이 어려워지자 리디 테크팀은 개발의 생산성을 높이기 위해 '인력 수 증가'가 아닌 우선 네이티브 앱을 리액트 네이티브 앱으로 전환하는 '기술의 변화'에 초점을 두게 되었다.


일부 이미지 출처 : 리디


위 이미지처럼 리액트 네이티브로 기술을 전환하면서 라프텔팀의 개발 조직 구조에도 변화가 일어났다.


한 번에 iOS와 안드로이드 앱 모두를 개발할 수 있는 리액트 네이티브는 기본적인 Javascript 언어를 사용한다. 그렇기 때문에 리액트 네이티브를 사용하는 조직인 경우 iOS와 안드로이드 개발자가 따로 있을 필요가 없고, 최소 자바스크립트 언어를 사용할 줄 알면 개발이 가능하다. 그만큼 효율적으로 인력을 관리하고, 앱 개발을 진행할 수 있다는 의미다. 


이에 리디 라프텔팀의 개발 인력도 더 쉽게 추가 인력을 채용할 수 있었고, 이에 현재는 프런트엔드 개발자 5명과 백엔드 개발자 4명이 배치되어 있다고 한다.(2021년 1월 기준) 


그리고 이와 같은 동일한 이유로 개발자 인력이 적은 만타팀도 부족한 리소스로 최대한 효율적으로 활용해 앱을 개발하기 위해 리액트 네이티브 방식을 채택했다고 볼 수 있다. 





리디가 신사업에 '리액트 네이티브'를 도입한 이유 (2)

고객 만족을 최우선 하는 구독형 서비스


라프텔과 만타는 또 하나의 공통점은 모두 '구독 서비스'라는 점이다.


구독 서비스는 일반적으로 '월마다' 멤버십이 결제됨으로써 유입만큼 중요한 것이 재구독률과 *고객생애가치(LTV)이다. 그만큼 활성 사용자로 전환된 유저들에게 지속적으로 긍정적인 사용자 경험을 제공하는 것이 중요할 것이다.


*고객 생애가치(LTV)란? 

사업상 고객 한 명에게 합리적으로 기대할 수 있는 총수익을 나타내는 지표. 고객의 수익 가치를 고려하고, 고객의 수익가치와 자사의 고객 예상 수명과 비교하는 데 사용합니다. 또한, 가장 중요하고 가치 있는 고객 세그먼트를 식별할 수 있습니다.

(출처 : 디지털 에이전시 HelloDigital)



실제 리디는 이미 서비스되고 있던 '라프텔'에 앞으로 새로운 기능을 계속 추가하고 개선함으로써 사용자들에게 더 좋은 경험을 제공하고자 했다. 네이티브 앱이었던 '라프텔'을 리액트 네이티브로 전환하는 것은 비용과 시간, 인력 등 많은 리소스가 투입되는 과정이었지만, 중장기적으로 봤을 때는 보다 서비스 경쟁력을 높이기 위한 유리한 전략이라 본 것이다. 


또한 웹툰, 애니메이션은 유저들의 화면 흐름이 무엇보다 중요한 분야이다. 앱 화면 터치 및 스크롤 동작에 즉각적으로 반응해야 유리하다. 처음부터 완벽하게 개발되는 앱은 없기 때문에 무엇보다 사용자들의 부정적인 목소리를 빠르게 캐치해 서비스를 개선하는 것이 필요하다. 


그런 면에서 안드로이드, iOS 각 운영체제를 한 번에 관리함으로써 유지보수에 보다 유리한 리액트 네이티브는 새롭게 론칭하는 '만타'에게 적합한 개발론이 되었을 것이다. 




리디가 신사업에 '리액트 네이티브'를 도입한 이유 (3)

개발의 안정성 중시


기존 기술을 대체할 수 있는 새로운 신기술은 계속 탄생되고 있다. 유행하는 프로그래밍 언어도 빠르게 변화하는 시대이다. 그만큼 신기술은 보다 고성능으로 앱을 개발할 수 있다는 장점이 있다.


신기술을 도입하기 위해서는 그에 대한 학습부터 테스트, 실행 등 많은 시간이 걸리는 일이지만, 신기술에 대해 무관심한 조직과 개발자는 시대에 뒤떨어지는 기술만 구현하게 될 것이다. 프로덕트의 성장을 위해서는 신기술에 많은 관심을 가져야 하는 이유다. 


하지만 반대로 무조건 신기술을 도입하려는 자세는 지양해야 한다. 신기술 도입은 생각보다 더 많은 리소스가 투입될 수 있고, 처음 도입하기 때문에 안정적으로 서비스를 구현하기 어렵기 때문이다. 


완전히 적합한 예시라 볼 수 없지만, 리디 '라프텔'팀의 이야기를 들어 보면 네이티브에서 리액트 네이티브로 전환하는데 예상보다 더 많은 기간이 걸렸다고 한다. 결론적으로 라프텔팀은 리액트 네이티브를 안정화시킴으로써 현재 더 좋은 작업 환경을 마련하게 되었지만, 작업 과정 중 기간이 딜레이 될수록 내부적으로 불안함은 커졌다고 한다. 


더불어 신사업인 '만타'를 개발하던 초창기에는 크로스 플랫폼 앱을 만들기 위해 프레임워크를 선정하는 과정 중에서, 근 1~2년 사이에 개발자들 사이에서 떠오르고 있는 구글의 '플러터'라는 플랫폼도 함께 고려했다고 한다. 그 밖에도 새로운 개발 방법론인 PWA(프로그레시브 웹 앱)까지 다양한 기술을 고려한 만타팀이었다. 


그러나 모두 오래되지 않은 신기술이기 때문에 내부 개발자들에게 더 익숙한 '리액트 네이티브'를 선정하게 된 것이다. 내부 개발자들이 개발하기에 수월하고 편리할 수록 더 안정적이고 전문적으로 개발이 가능하다는 점에서 신기술 도입이 절대적이지 않다고 볼 수 있다. 




PM이 고려해야 할 부분은?


리디가 확장한 신사업들의 '리액트 네이티브' 도입 이유를 파악해 보며 얻은 인사이트가 3가지 있었다.


첫째, 기술 스택의 변화로 리소스 한계를 커버할 수 있다. (인력 채용까지)

둘째, 기술 스택 결정 시 장기적인 비즈니스 관점도 함께 고려해야 한다. 

셋째, '안정성' vs '신기술을 통한 성능 향상' 중 절대적인 정답은 없다. 


결국 PM은 기술 스택을 결정하는 과정에서 직접적인 결정을 하지는 않겠지만, 장단기 '비즈니스적' 관점을 테크팀에 제시할 줄 알아야 한다고 본다. 


그리고 우리 조직이 사용하고 있는 기술 스택의 종류와 사용 이유, 그리고 조직 구조를 이해하고 있어야만 프로덕트 기획 시 적절한 설계와 협업이 이루어질 수 있을 것이라 생각한다. 




리디의 기술 블로그를 전체적으로 살펴보면, '리디스토리'라는 새로운 서비스가 눈에 띈다. 리디가 2017년 1월에 론칭한 신규 웹 소설 연재 서비스였으나, 같은 해 11월에 서비스 종료된 리디스토리이다.


그런 리디스토리가 처음 개발되었던 과정을 보면 1년이라는 기간 안에 빠르게 서비스를 론칭해야 하는 상황이었다. 특히 서버 개발자는 2명밖에 존재하지 않았던 환경 속에서 리디스토리는 네이티브 앱이 아닌 '웹앱'을 선택하게 된다. 웹앱으로 개발했기에 빠르게 개발이 진행되고 그만큼 유지보수도 쉬웠지만, 속도가 느리다는 큰 단점이 존재했다. 이에 내부적으로 네이티브 앱 또는 리액트 네이티브로 전환해야 한다는 의견이 나왔다고 한다. 하지만 결국 리디스토리 서비스는 '웹앱'을 유지했다. 대신 라이브러리 변화 및 UX 개선 등을 통해 기술문제를 보완하고 노력했다.


결론적으로 이야기하면 네이티브나 리액트 네이티브로 서비스를 전환하자고 주장하는 내부의 의견 속에서 '웹앱'을 고수한 리디의 판단은 옳았다고 본다. 서비스가 종료된 이유에는 여러 가지가 있겠지만, 결국 가장 큰 이유는 유저들의 사용성이 떨어졌기 때문이라 생각한다. 웹앱에 변화를 주었다면 서비스 운영이 지속되었을 것이라고 주장할 수도 있겠지만, 중단된 서비스를 바라보는 현재의 입장에서 당시 네이티브 앱으로 전환하는 것은 리소스의 낭비가 되었을 것이라 판단한다.


그리고 당시 그러한 판단을 해야하는 주체적인 입장 중 하나가 바로 PM이여야 한다고 본다.


즉 PM은 기술 스택에 대한 고차원적인 이해보다 기본적인 이해를 바탕으로 비즈니스적 가치와 연관을 짓는 역량이 더 중요하지 않을까 싶다더불어 이를 구성원에게 올바르게 공유하고 설득할 줄 아는 커뮤니케이션 역량이 PM으로서 테크 지식을 갖추는 목적이라고 다시 한 번 강조할 수 있을 것 같다. 





※ 참고 자료

- 리디 개발 블로그

- the bell, 'VC, 프리PIO 나선 리디 엑시트 대신 재투자 할까', 이명관 기자, 2021.10.25

- IT 조선, '비전 거창한 리디, 신사업 성과는 '지지부진', 이은주 기자, 2021.03.08


매거진의 이전글 문과생도 쉽게 이해하는 API와 REST API
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari