1. 시작
  2. 기대
  3. 기획과 개발과정
  4. 경쟁 앱의 등장 🤯과 Plan B
  5. HYPE의 현위치와 이정표
  6. 아쉬웠던 것들, 그리고 배운 것들
    1. 1. 쌓이는 디자인 부채
    2. 2. 개발 속도와 Lean함의 중요성
    3. 3. 베타테스팅의 필요성

시작

2월 초 SDM형에게서 “앱 하나 빠르게 만들어볼 생각 있냐”며 연락이 왔다. 미국의 GAS, 독일의 SLAY 앱을 벤치마킹하여 학생들을 위한 “칭찬 앱”을 만들어보자는 제안이었다. 다양한 질문에 대해 유저들이 답변하면 자연스럽게 유저 간 칭찬이 이루어지고, BM은 칭찬을 보낸 사람을 확인하려면 광고를 보거나 프리미엄 구독에서 나오는 서비스였다.

기대

SLAY는 출시 4일만에 독일 앱스토어 1위를 하고 250만 유로 규모의 투자를 유치했으며, GAS의 경우는 700만 달러의 수입을 내며 디스코드가 인수하기로 했다는 뉴스를 봤다. 이렇게 대박을 냈던 아이템이 아직 한국에는 없었다. 앱스토어와 플레이스토어 어디를 뒤져보아도 없었다. 우리가 국내 시장에서만큼은 선두주자처럼 느껴졌다.

지인들에게 개발 중간중간에 앱을 소개할 때, 술게임중 하나인 ‘거짓말 게임’이 좋은 예시가 되었다. 답을 듣고 질문이 궁금하면 선뜻 술을 마시고자 하는 의지가 생기듯이, 칭찬을 받고 사람이 궁금하면 진짜로 유저들이 선뜻 광고를 볼 것 같았다. 외국 학생들 뿐더러 우리나라 대학생 사이에도 먹히는데, MZ 중고등학생들에게 먹히지 않을 이유가 있겠는가? 하면서 말이다.

기획과 개발과정

SDM형이 백엔드(+프론트 지원)를, 내가 프론트엔드를 맡았고 옛날 동아리에서 한 번 만난 적 있었던 SWJ형이 기획을 맡아, 세 명으로 팀이 구성됐다. 디자이너가 있었다면 더 좋았겠지만, 프론트를 맡는 김에 내가 그냥 디자인도 해보기로 했다.

앱 프레임워크는 언제나 그랬듯 React Native를, 백엔드 프레임워크는 Nest.js를 사용해봤다. 지난 프로젝트들로 배웠던 부분을 최대한 활용해보기 위해 React-Query활용을 극대화하고 상태관리를 최소화하며, 꼭 필요할 때만 Recoil을 사용해보기로 했다.

앱 이름은 HYPE으로 정했다. MZ를 타겟으로 하는 만큼 힙하고 입에 잘 붙는 이름을 찾다가 만장일치로 뜻이 모였다. 자연스럽게 우리 팀 이름은 Hypeboyz가 되었다. 뉴진스의 하입보이요

하루이틀, 길면 일주일로 끝날 줄 알았던 개발은 군대로 인한 시간 부족과 개인 역량의 부족으로 한 달 남짓이 걸렸다. 결국 2월 중순에 시작해서 3월 중순에 개발이 완료되었지만, 갖가지 버그와 오류로 인해 (특히 이 이슈) 4월 초에야 본격적인 서비스 개시가 가능하게 되었다.

비록 일정의 지연이 조금은 있었지만, 큰 문제 없이 순조롭게 진행되는 중이라고 생각했었고 마케팅과 유통 준비도 꽤나 구체적으로 계획하고 있었다.

경쟁 앱의 등장 🤯과 Plan B

배포를 앞두고 막바지 QA를 진행하고 있었던 3월 26일, 지인을 통해서 우리와 같은 컨셉의 앱이 서비스를 시작했다는 소식을 들었다. 직접 설치해서 빠르게 훑어보니 HYPE보다 UI도 더 깔끔할 뿐더러 카카오 로그인을 이용한 간편한 유저 유입이 가능했다. 사이드프로젝트 정도로 진행하던 우리보다 더 본격적으로 준비해왔다는걸 단번에 느낄 수 있었고, 우리가 선발주자라는 굳은 믿음과 함께 내 멘탈은 조각나버렸다.

복구하는데 SDM형과 SWJ형의 긍정적인 마인드가 큰 도움이 되었다.

“어차피 우리가 선두였어도, 후발주자는 필연적으로 따라왔을 것이다.”
“우리 앱만의 아이덴티티를 찾을 수 있는 좋은 기회다.”
“중요한 건 꺾이지 않는 마음, 우리는 우리 할 일을 하자!”

HYPE의 현위치와 이정표

4월 10일 현재 경인고등학교 학생들을 대상으로 한 인스타그램 마케팅으로 약 40명의 유저를 확보했으나, 이들이 얼마나 앱을 사용하는지는 미지수다. 지긋지긋했던 안드로이드 전화번호 인증 문제를 해결했으니 안드로이드 유저를 대상으로 2차 넛지를 주며 재시도를 해보고, 지표들을 확인할 차례다.
우선 총 유저수를 확보하는게 우선이고, 이후 유저간의 상호작용을 유발하거나 개인 질문같은 컨텐츠로 리텐션을 잡고 DAU를 확보해야 한다. J커브를 그려주어 다른 학교로도 확장해 나간다면 베스트지만, 그렇지 않을 가능성이 높다고 본다.

심지어 시장에 먼저 진출한 유사 서비스가 있다보니 경쟁에서 밀린다면 더 어려워질 것이다. S***앱의 리드가 디스콰이엇에 올린 글을 보았는데, 고등학교 3학년인데도 불구하고 이 정도의 기획력과 생각을 가지고 있다는 것 자체에 리스펙을 느끼지 않을 수 없었다. 이미 다양한 학교의 많은 유저들을 확보했고, 그것이 가장 큰 무기가 되어 빠르게 디벨롭해나갈 역량이 충분하다고 느꼈다.

하지만 선발주자던 후발주자던 상관 없이, 경쟁력을 갖추는 것은 당연하게도 할 일이다. 우리가 다른 앱에 비해 어떤 장점을 가질 수 있으며, 어떻게 구현해낼 수 있는지를 계속 생각해야 할 것 같다. 그렇게 모든 노력을 쏟아붇고도 장렬히 패배한다면 그제서야 좋은 실패를 겪었다고 다잡을 줄도 알아야겠다.

아쉬웠던 것들, 그리고 배운 것들

1. 쌓이는 디자인 부채

프론트엔드 개발과 디자인을 동시에 진행하기엔 내가 UI 디자인에 대한 감각이 아직 부족하다. 그렇기에 초반에 앱 브랜드 컬러나 컨셉을 명확히 잡고 갔어야 했는데, Lean하고 빠른 개발을 추구하는 동안 해결하지 못한 디자인 부채가 생겼다. 유저들이 사용하기에는 불편하지 않을지 몰라도, 경쟁성을 확보하는 큰 요소들 중 하나가 UI기에 지금도 스스로 만족하지 못한 채 쌓여만 가고 있다.

2. 개발 속도와 Lean함의 중요성

항상 느끼지만 Lean한 기획은 ‘대충’짠 계획이 아니다. 오히려 반대로, 어떤 부분을 Lean하게 파고들어 구현할 지 구체적인 기획이 이루어져야 한다. 개발을 하다가 **어, 이 부분을 추가하면 더 좋을 것 같은데?**하는 생각에 시간을 더 투자하며 이것 저것 살을 붙이다 보면 결국 처음의 Lean함은 없어지고 만다.
그리고 React Native 프레임워크의 앱을 거의 세,네번째 만들어보는 것 치고 아직도 초기 설정과 자잘한 디버깅에 너무 많은 시간을 쏟는 것 같다. 결국엔 이런 경험이 쌓이면 해결되겠지만, 더 꼼꼼하고 빠른 코더가 되고싶다.

3. 베타테스팅의 필요성

경쟁 앱의 등장으로 시간에 쫓기듯이 출시하는 바람에 베타테스팅을 진행하지 못했다. 결국 앱을 완벽한 상태로 만들고 출시하려면 다수의 검토가 생략되어서는 안된다.


개발 후기 2편은 현재 진행중인 마케팅/유통 과정을 마무리한 이후에 이에 대한 피드백을 해볼 생각이다.