Experience/소프트웨어 마에스트로

[소프트웨어 마에스트로] SW마에스트로 13기 수료 후기 (맡은 역할 / 프로젝트 소개 / 기술적 어려움 극복 사례 / 협업 방식)

koh1018 2022. 12. 16. 03:22
반응형

오늘인 12월 15일 수료식을 끝으로 소마 생활이 끝났다.

 

 

약 8개월(4~5월 예비과정 + 6월~11월 본과정)간의 소마 생활을 모두 마무리 하고 이제 13기 연수생에서 수료생이 되었다.

 

정말 많은 것을 경험하고 배우며 성장할 수 있는 시간이었다. 모든 것을 적을 순 없겠지만 성장한 부분, 느낀 점등을 정리하고 진행한 프로젝트를 구체적으로 소개해보려고 한다.

 

 

 

팀에서 어떤 역할을 수행했나?

프론트엔드 개발자로 참여했으며 여러가지 일을 도맡아 처리하였다.

  • 웹 프론트엔드 개발 및 크로스 플랫폼 앱 개발
    : 웹으로 서비스를 개발하고 이를 웹뷰로 감싸 크로스 플랫폼 앱을 만듦 (+ 로그인 구현)
  • 전문가 및 제휴 기업 컨택 관리 및 인터뷰 진행
    : 약 50명의 약사 및 전문의와 20개의 제약사에 직접 전화 혹은 이메일로 연락을 돌려 미팅/인터뷰를 잡고 이를 진행함
  • 서비스 화면(UI) 설계
    : 유저 시나리오를 뽑고 우선순위에 따라 Figma를 사용하여 약 50개 화면의 와이어프레임을 만들고 구체적인 디자인 명세를 적어 디자이너와 커뮤니케이션하며 디벨롭시킴
  • IR용 PPT 제작 및 발표
    : 기획, 중간, 최종에 쓰일 PPT를 만들고 IR 스크립트를 작성해 발표함
  • 기획 팀장
    : 여러 창업 대회에서 수상한 경험을 바탕으로 차별성 있고 수익을 도모할 수 있는 아이디어를 뽑아내고 기획 회의를 진행함

 

수많은 밤을 새며 열심히 많은 시간을 들여 프로젝트를 진행했다.

성실하게 맡은 바를 다했으며 아프거나, 기타 이유로 팀원의 업무 진행이 어려울 때도 그 역할을 매꾸며 팀 프로젝트가 굴러갈 수 있게 하였다.

 

 

 

어떤 기술 스택을 사용했나?

기본적으로 앱이 아닌 웹으로 개발을 진행했는데 이는 서비스의 특성을 고려한 것이었다.

수많은 영양제의 정보를 제공하며, 커뮤니티 서비스를 제공하기에 구글 검색을 통해서도 쉽게 접근이 가능해야했고 SEO를 고려해 웹 기반으로 개발하게 되었다.

 

 

Web Front

  • Next.JS : SSR을 통한 빠른 렌더링이 가능하고 SEO 적용이 가능하기에 선정하였다. 번들링 된 index.js 파일을 구글 서치봇이 파싱하기도 하지만 일정시간 이상 이후부터는 파싱을 포기하기에 SSR을 통한 SEO 적용이 더 효과가 있을 것으로 생각하였다. 또 Automatic Routing을 제공하기에 바닐라 React에 비해 불필요한 반복작업이 줄어들어 더 효율적으로 빠르게 일할 수 있을 것이라 생각했다.
  • Typescript : 타입을 명시할 수 있어 Javascript에서 발생할 수 있는 타입 에러들을 미연에 방지할 수 있는 점이 많은 생산성 향상을 가져올 수 있다 생각하여 선택하였다. 또 개인적으로 타입을 명시해 작업하는 것이 코드를 이해하는데 도움이 되는 편이라 선택하였다.
  • Tailwindcss : 한 소마 멘토님의 강력 추천으로 사용하게 된 css 프레임워크다. 부트스트랩과 유사하게 사용되어 높은 생산성을 낼 수 있을 것이라 생각해 선택했다. 그리고 실제로 퍼블리싱 시에 엄청난 생산성 향상을 가져왔다.
  • Zustand : React 상태 관리 라이브러리 중 하나다. 벌써 4.0.0 버전을 넘기고 있었고 깃허브 스타수가 많아 믿고 사용할 수 있었다. Redux 같은 대표적인 상태 관리 라이브러리 대신 사용한 이유는 Redux의 보일러플레이트를 엄청나게 줄여 간단히 사용할 수 있었기 때문이다.
    • Zustand-Persist : zustand persist는 middleware로 사용하면 localStorage와 연동하여 자동으로 전역 상태 관리 내용을 localStorage에 저장시키고 관리할 수 있다. 전역 상태 관리 값을 localStorage에 넣었다 뺐다 하는 것이 아닌, 연동하여 관리할 수 있다는 점이 편리해 사용하였다.
  • Next-Auth : 소셜 로그인을 쉽게 관리할 수 있는 라이브러리이다. Next.JS를 만든 회사인 Vercel에서 만든 라이브러리라 믿고 쓸 수 있었고 소셜 로그인을 빠르게 구현할 수 있는 장점이 있어 사용하게 되었다.
  • Material-UI : 대부분은 Tailwindcss를 통해 직접 만들었지만 공수가 많이 드는 컴포넌트의 경우 mui를 사용하여 커스터마이징 했다. 아이콘의 경우도 Mui icon을 사용했다.

 

이 밖에도 Axios, Dayjs, GA, Eslint+Prettier+Husky, Airtable, Zapier 를 사용하였다.

 

 

Mobile

  • Flutter : 우선 크로스 플랫폼을 지원한다는 점에서 선택하게 되었다. RN과 비교해 고민을 하였는데, 실제로 두 프레임워크를 이용해 웹뷰를 띄우고 개발해보았을 때 Flutter 쪽의 퍼포먼스가 더 좋아보였고 RN쪽에서 빌드하는 과정에 잔버그가 많아 Flutter를 선택하게 되었다.
  • webview_flutter : 개발한 웹을 플러터에 띄우기 위해 사용하였다. inappwebview와 비교해 고민하였는데, 이 라이브러리는 flutter.dev측에서 직접 만든 라이브러리라 안정성을 고려해 선택하였다.
  • flutter_local_notification : 우리 서비스가 주는 복용 알림은 사용자가 설정한 복용 시간대에 알림을 줘야하는 기능이므로 설정한 요일, 시간에 반복해서 알림을 줘야했다. 이에 따라 서버에서 알림을 주는 것이 아닌 local에서 알림을 주는 것이 더 알맞다 생각하였고 이 라이브러리를 사용하게 되었다.

 

 

 

기술적으로 어떤 어려움이 있었나?

● 서버와 클라이언트의 동기화 문제

https://www.notion.so/541966456bfa440e83b3738dd18ed0d4

 

백엔드 팀원의 고민

고민하는이유

www.notion.so

함께 개발하던 백엔드 팀원이 기술적으로 문제가 발생할 수 있는 사항에 대해 고민하여 위의 링크 노션으로 정리하여 전달해주었다.

정리하면 영양제 복용 알림을 주는 방식에서 해당 복용 기록이 신뢰성이 보장되는 데이터여야 하고, 복용 알림으로 그치는 것이 아니라 해당 정보가 커뮤니티 등의 다른 기능에서도 사용되어야 하기 때문에 서버에서 관리되어야 하는데 그 방식에 대해 고민이 있다는 것이었다.

 

 

https://www.notion.so/0441d2ceeb0a440cabea63e48013081b

 

제시한 개선안

초기 개선안 구상

www.notion.so

이를 해결하기 위해 데이터가 저장되는 곳과 처리되는 곳, 그리고 그 흐름을 고민하였고 고민한 바를 위 링크 노션으로 정리해 다시 전달하였다.

사용자가 복용 체크 버튼을 누를 때 복용 체크 내역이 true/false로 업데이트 되도록 Update 메서드를 사용할 것을 제안했다. 복용 기록 데이터가 없는 경우 데이터가 생성될 수 있고, 이미 존재하면 데이터가 수정되므로 여러번 실행되도 항상 같은 상태이므로 멱등성이 유지된다고 판단하였다.

이를 통해 서버에서는 복용 기록만을 받아 관리할 수 있게 되었으며 나머지 데이터는 서버에 저장된 해당 복용 기록을 get으로 받아 프론트의 로컬스토리지에 저장된 사용자 복용 정보를 가공하여 영양제만든 영양제 틀 데이터에 끼워 넣어 처리하는 방식으로 구현하였고 성공적으로 작동하였다.

 

 

● Zustand Persist middleware가 localStorage에 접근이 안되는 문제

이는 zustand측의 type 문제가 있었는데 persist를 사용하는 경우 Typescript 환경에서 타입 에러가 나는 것이었다.

다행히 공식 레포에 workaround가 있어 응용하여 해결하였으나 또 다른 문제가 생겼는데, Next.JS는 SSR을 하기 때문에 서버에서 랜더링을 할 때 window 객체가 undefined 되어 있으므로 localStorage에 접근이 안되는 것이었다.

필자는 이렇게 발생하는 Hydration Failed 에러를 해결하기 위해 커스텀 훅을 만들었다.

React의 life cycle을 고려해 useEffect에서 window 객체에 접근하도록 하여 접근이 가능하도록 한 것이다.

이 커스텀 훅으로 교체한 후 문제를 해결할 수 있었다.

https://kbwplace.tistory.com/152

 

[NextJS / Typescript] Zustand Persist middleware localStorage 접근이 안되는 문제 (+ Zustand Persist Typescript 환경 ty

GitHub - pmndrs/zustand: 🐻 Bear necessities for state management in React 🐻 Bear necessities for state management in React. Contribute to pmndrs/zustand development by creating an account on GitHub. github.com Zustand의 Persist라는 middleware를

kbwplace.tistory.com

 

 

● WebView 버튼 클릭 시 생기는 파란색 박스 문제

파란색 박스 외에도 웹뷰에서 서비스를 사용할 때 문제가 있었는데 그것은 웹으로 만들어져 App스럽지 않다는 것이었다.

이를 해결하기 위해 Webkit CSS 속성을 통해 제어했고 App스러운 웹을 만들 수 있었다.

https://kbwplace.tistory.com/153

 

[Web / CSS] WebView 버튼 클릭 시 생기는 파란색 박스 해결 (웹을 앱처럼 보이게 하는 법)

스마트폰으로 웹페이지를 둘러볼 때 웹페이지가 App 스럽지 못하다는 생각을 해본적이 있을 것이다. 이는 테두리와 박스 때문이다. 또한 링크나 이미지를 길게 누르면 주소를 복사하거나 이미지

kbwplace.tistory.com

 

 

● 고객 문의/건의 내용 자동화

서비스의 빠른 성장을 위해 고객의 피드백을 모으고 정리하는 일은 무척 중요했다.

하지만 고전적인 이메일로 이를 처리하기엔 너무 공수가 많이 들었다.

따라서 자동화된 고객 피드백 처리가 필요했다. 하지만 고객 문의/건의 사항을 데이터베이스에 넣기엔 너무 정적이고 애매한 부분이 있다고 생각하였다.

이러한 부분들을 해결하기 위해 여러 서비스와 기술을 리서치하였고 그 중 AirTable과 Zapier를 사용하게 되었다.

AirTable은 구글 스프레드시트와 구조는 비슷하지만 테이블을 만들면 자동으로 rest api를 만들어주는 툴이었다.

그리고 이 AirTable과 Slack을 Zapier로 연동하여 고객에 앱을 통해 문의/건의 사항을 남기면 팀 Slack 고객 피드백 채널에 자동으로 전달해주도록 만들었다.

https://kbwplace.tistory.com/157

 

[AirTable / Zapier / Slack] 고객 문의/건의 내용 알림 및 관리 자동화하기

빠른 피드백을 통해 서비스를 빠르게 개선시키기 위해서 전달 받은 고객의 문의/건의 사항을 모으고 정리하는 일은 굉장히 중요하다. 이를 위해서 고객 문의/건의 사항에 대한 자동화된 처리가

kbwplace.tistory.com

 

 

 


 

 

이 밖에도 아래 링크와 같은 간단한 트러블 슈팅을 진행하였다.

https://kbwplace.tistory.com/151

 

[NextJS / Typescript] Eslint + Prettier 설정 후 husky로 자동화하는 법

npx eslint --init 터미널을 키고 위 명령어를 입력하여 .eslintrc.js 파일 만들기 위와 같이 질문에 체크하면 된다. 중간에 Which style guide do you want to follow?에는 에어비엔비 스타일로 해도되고 취향것 하

kbwplace.tistory.com

https://kbwplace.tistory.com/156

 

[NextJS] Next.js 프로젝트에 Google Analytics 붙이기

GA를 붙이는 여러 라이브러리들이 있다. 하지만 유럽권에서 개인정보를 활용한 마케팅에 규제를 가하고 있는 이유로 구글 새로운 방식의 마케팅 지원을 할 수 있게 변화를 주고 있다. 이런 변화

kbwplace.tistory.com

https://kbwplace.tistory.com/158

 

[React / Typescript] props에 기본 값 설정하는 법 (react props default value typescript)

우선 기존에 사용되던 defaultProps는 더 이상 사용되지 않는다. (참고↓) RFC: createElement changes and surrounding deprecations by sebmarkbage · Pull Request #107 · reactjs/rfcs This proposal simplifies how React.createElement works

kbwplace.tistory.com

https://kbwplace.tistory.com/159

 

[Typescript / Dayjs] 1분만에 글 작성 경과 시간 구현하기 (몇 분 전, 몇 시간 전, 며칠 전) (measure time el

유튜브 등을 보면 영상이 올라온 경과 시간등이 표시된다. 커뮤니티 등을 개발하다보면 글 작성 경과 시간을 표시해줄 필요가 있는데 Dayjs를 사용하면 간단하게 구현할 수 있다. Dayjs는 기존의

kbwplace.tistory.com

 

 

 

어떤 팀원들과 어떻게 협업하였나?

우리 팀은 '기술은 결국 사람을 위해 활용될 때 의미가 있다'라는 가치에 공감하는 사람들이 모였다.

실제로 사람들이 느끼는 Pain Point를 발견하고 그것을 기술로 해결하여 수익을 도모하는 비즈니스적인 부분을 고려하는 사람들이었다.

 

이에 따라 팀 결성 이후 본과정동안 유저 인터뷰와 전문가 인터뷰, 기업 미팅 등 수많은 잠재 고객과 업계 관계자들을 만났고 끊임없이 정의한 문제와 솔루션을 검증하고자 하였다.

 

기획은 모두가 함께 참여하였고 개발은 프론트, 백, ML로 나누어 작업하였다.

 

 

어떻게 일했나?

요즘 너도나도 다 알고 쓴다는 애자일 방법론 중 스크럼의 프로세스에 따라 일을 진행했다.

솔직한 말로 인원이 적어 PO나 SM을 따로 둘 수 없었기에 제대로 된 스크럼을 했다고 볼 수 있는지는 모르겠다.

 

KPT 회고

하지만 우리 팀은 스크럼을 최대한 조직에 반영하려고 노력하였으며 KPT 회고를 통해 더 효율적인 방식으로 업무를 진행하려고 개선해나갔다.

 

약 5~6개월간 Jira를 사용해 1~2주로 스프린트를 진행했으며 해당 기간동안 일요일을 제외한 거의 모든 날의 코어타임 시작 시간에 데일리 스크럼을 진행했다.

 

또 소마 멘토님들이 제공하는 애자일 관련 멘토링을 수강하며 Jira와 스크럼에 대해 배워나갔다.

 

 

아쉬웠던 점은 기대만큼의 업무 효율을 뽑아내지 못했다는 것이다.

코어 타임을 정해놓고 코어 타임을 포함하여 하루 최소 8시간씩 일하기로 하였는데 재택으로 진행하는 날의 경우 업무 진행 현황파악이 어려웠고 이로 인해 업무가 진척되었다.

 

 

이를 해결하고 코어타임에 서로 빠른 피드백을 주고받기 위해 게더타운도 사용해보았지만 전체적인 업무 능률은 나아지지 않았다.

아무래도 조금 더 확실한 업무 할당과 그에 대응하는 책임을 심어줄 보상 혹은 벌칙이 필요했을 것 같다.

 

또 지금 시점에 회고를 해보면 어떠한 일에 대해 해당 일이 얼마나 걸릴지 시간을 예측하기 어렵다는 것이 가장 큰 문제였던 것 같다.

필자는 오늘 끝내기로 한 업무가 생각보다 길어지는 경우 밤을 새더라도 마치는 성격이지만 이는 의무도 아닐뿐더러 개개인에 따라 일의 능률을 떨어뜨릴 수도 있다고 생각한다.

더 적절한 업무 소요 시간 파악과 이에 따른 일의 할당이 적절하게 이루어졌으면 더 좋은 효율을 냈을 것이라 생각한다.

 

 

업무 대화는 슬랙을 사용했는데 목적에 맞게 채널을 만들고 잘 활용하였다.

 

 

슬랙의 데일리스크럼 채널을 통해 매일 코어타임 시작 시간마다 Jira 티켓의 링크와 연결하여 할일을 명시하고 작업을 시작했다.

 

 

 

그래서 어떤 결과물을 만들었나?

 

우리의 프로젝트는 '영양제 복용부터 건강 고민까지, 믿고 쓰는 건강 고민 해결 커뮤니티'를 캐치 프라이즈로 한 비힐러라는 이름의 건강 관리 플랫폼 서비스였다.

 

 

https://drive.google.com/file/d/1GHL75DJYidU0epfm9u_orpelUWYJ-ph9/view?usp=share_link 

(영상이 안보이는 경우 위 링크를 통해 볼 수 있습니다.)

 

뉴스.mp4

 

drive.google.com

처음에는 영양제로 시작했다.

많은 사람들이 영양제 먹기를 권장량에 맞춰 먹기 어려워 했고, 잘 먹고 있는지도 알기 어려워했다.

영양분이 과잉되는 경우 큰 문제가 생길 수도 있음에도 이를 인지조차 못하는 사람들이 많았다.

또 지속적으로 먹어야 효능을 볼 수 있는데, 까먹고 놓치는 사람들이 많았다.

 

 

국내 영양제 시장은 지속적으로 성장하고 있었기에 불편함을 겪는 소비자는 더욱 늘 것이라 생각했고 우리는 이 도메인을 바탕으로 서비스를 만들기로 결심하였다.

 

우리는 앞서 확인한 문제를 해결하기 위해 사용자 본인이 섭취중인 영양제를 검색하여 등록만 하면,

1. 영양제의 영양분들을 자체 알고리즘에 따라 합산하여 권장량에 맞춰 먹고 있는지 알려주고,

2. 각 영양제 별 먹으면 좋은 시간, 조합에 맞는 추천 영양제 시간표를 자동으로 짜 알림을 주는

서비스를 만들고자 하였다.

이렇게 데이터를 모아 영양제의 '화해 (화장품 분석 서비스)' 같은 서비스를 만들고자 하였다.

 

실제로 권장 섭취량에 먹기란 여간 까다로운 것이 아니었다.

왼쪽 화면은 오메가3영양표인데, 빨간박스의 비타민A,D,E와 같이 오메가3와 관련 없는 영양분들이 포함되어 있었다. 이를 인지하지 못하고 타 영양제를 추가로 먹으면 과잉증이 발생한다.

오른쪽에 보이는 것은 영양분 함량 단위들인데, 제조사마다 함량단위가 다르다. 특히 IU 단위 같은 경우에는 영양제의 종류에 따라 계산방법이 달라 소비자를 더욱 혼란스럽게 만들었다.

 

 

 

하지만 우리 프로젝트에는 문제가 있었는데, 유저 인터뷰를 통해 명확한 Pain Point는 뽑아내었으나 경쟁 업체가 너무 많다는 것이었다. (이 중 Seed 투자를 30억 받은 곳도 있었다..)

이러한 이유 때문에 기획심사에서 좋지 못한 평을 받았고, 이에 따라 우리팀은 새로운 차별점을 만들어내기 위해 더 많은 유저 인터뷰와 리서치를 진행하며 차별점을 뽑아내기 위한 추가적인 기획을 진행하였다.

 

 

처음 만든 차별점은 바로 필렌즈라는 이름의 이미지 인식 기술이였다.

정확히는 이미지 분류기술을 사용한 것으로 YOLO 모델을 사용하였다.

영양제통을 찍기만 하면 간편히 검색할 수 있는 편의 서비스를 도입하였다.

 

 

이는 위와 같은 문제점으로 인해 사용자들의 어려움을 해소해주고 우리 서비스에 쉽게 섭취중인 영양제를 등록할 수 있게 하기 위함이었다.

 

그리고 추가적으로 나온 우리의 핵심적인 차별 서비스는 바로 건강 고민 커뮤니티였다.

이는 유저 인터뷰를 기반으로 하고 있었는데, 우리가 타겟으로 잡은 페르소나는 30~40대 영양제를 많이 챙겨먹는 직장인이었다.

우리 서비스를 사용하는 사람들은 건강에 관심이 있어 영양제를 먹는 사람들이라는 사실을 깨달았고, 영양제를 먹는 근본적인 이유는 건강에 대한 고민 때문이라는 것을 알게 된 것이다.

 

 

하지만 많은 사람들은 효능 효과에 대한 허위 광고로 많은 어려움을 겪고 있었고 우리는 신뢰도 시스템을 마련한 커뮤니티를 만들고자 하였다.

 

이에 우리는 바로 피보팅을 진행하였고, 건강 고민 커뮤니티의 기획을 구체화시켜나갔다.

 

 

우리는 개인 헬스 케어의 경쟁 분야를 뛰어 넘어 건강 고민 플랫폼이라는 정체성으로 경쟁을 하고자 하였다.

 

이에 영양제를 분석하는 유틸리티 기능을 1단계로 개발하고 여기서 모인 사람들을 기반으로 플랫폼으로 전환을 꾀해 2단계인 건강 고민 커뮤니티를 개발하는 기획안을 만들어냈다.

 

 

 


 

 

최종적으로 우리 팀이 정의한 문제와 이를 해결한 방안을 소개하도록 하겠다.

 

 

Problem

우리 팀은 최종적으로 위 네 가지 문제를 정의하였고 이를 풀고자 하였다.

 

 

Solution

앞서 정의한 문제에 대한 각각의 해결책은 위와 같다.

 

 

우리가 만든 기능들은 각각 분리된 서비스가 아닌 유기적으로 연결돼 동작하는 서비스였다.

 

 

필렌즈부터 시계방향으로 소개하도록 하겠다.

 

 

먼저 편리한 영양제 검색 및 등록 UX이다.

왼쪽에 보이는 홈화면에서 이미지 검색 버튼을 누르고 영양제 통을 찍으면 , 원스텝 검색이 가능하다.

이후 영양제 상세정보페이지에서 섭취중인 영양제로 쉽게 등록할 수 있다.

 

 

앞선 검색으로 섭취중인 영양제를 등록하게 되면,

왼쪽에 보이는 4가지로 분류된 식약처 기준에 따라 부족, 초과량을 파악할 수 있다.

사용자는 밸런스 분석 페이지에서 등록 영양제 기반으로 분석한 결과를 확인할 수 있으며 부족/초과량을 한눈에 파악할 수 있다.

또 각 영양분별 상세 분석 리포트도 확인이 가능하다.

 

 

다음으로 간편한 복용 체크 및 알람 UX이.

영양제 복용 관리를 시작하면, 추천 영양제 시간표를 자동으로 생성해준다.

섭취 시간에 복용 알람을 받을 수 있으며 터치 한번으로 간편하게 섭취 체크가 가능하다. 이는 섭취 인증에 활용되며 스마트 워치에서도 체크가 가능하다.

 

 

우리 팀은 위 유틸리티 기능들을 특허 출원했으며 기술적 차별점을 갖고자 노력하였다.

 

 

마지막으로 우리의 핵심 서비스인 건강 고민 커뮤니티이다.

우리의 커뮤니티는 앞서 소개한 유틸리티 기능들과 긴밀히 연결되어 동작하는 커뮤니티이며,

같은 건강 고민을 갖는 사람들이 모여 있는 28가지 건강 고민 라운지로 이루어져 있다.

 

 

또한 허위/과대 광고로 인한 신뢰도 문제를 해결하기 위해 여러 신뢰도 시스템을 마련하였는데,

왼쪽 위에 보이는 것과 같이 공신력 있는 전문가의 경우 프로필 인증 뱃지를 직접 부여하였으며,

당근 마켓의 매너온도 시스템과 유사하게 좋아요 시스템을 도입하였다.

또한 복용 후기 글을 적는 경우 복용 체크 기록을 바탕으로 복용 인증 마크를 부여했다.

 

 

비힐러의 건강 고민 커뮤니티에서는 개인 건강 상태에 맞는 맞춤형 건강 고민을 빠르게 해결할 수 있다.

먼저 관심 건강 고민토픽을 구독하면 해당 건강 고민 라운지가 추가되고,

사용자는 같은 건강 고민을 갖는 사람들과 함께 소통하고 영양제에 대한 이야기를 나누며 건강 고민을 쉽게 해결할 수 있다.

 

 

건강 고민 커뮤니티에는 몇 가지 부가 기능이 있는데,

첫 번째로 영양제 태그 기능이다. 글에 영양제를 태그하면 영양제 상세페이지와 링크로 연결되며, 복용 체크 유틸리티와 연결되어 복용 인증 마크를 부여한다.

두 번째로 영양제 포트폴리오 기능이 있는데, 유틸리티 기능들을 바탕으로 개인 영양 상태 리포트 내용이 정리된 것이며 글에 쉽게 임베드하여 맞춤형 답변을 간편히 받을 수 있다.

 

 

 

전문가 검증

전문 약사님 인터뷰 (초상권으로 인해 얼굴은 가렸습니다.)
가정의학전문의 인터뷰 (초상권으로 인해 얼굴은 가렸습니다.)

선 우리의 솔루션에 대해 직접 전문가를 뵙고 검증 인터뷰를 받아보았었는데 좋은 평들을 많이 받았다.

 

 

 

BM

우리의 기본적인 비즈니스 모델은 같은 건강고민을 갖는 사람들이 모여있다는 특성을 활용한 타겟 광고였다.

 

 

또한 전문의를 만나며 얻은 인사이트를 바탕으로 시대적 변화에 따른 소분 판매를 새로운 BM으로 추가하였다.

 

 

빅썸 대표님 / 유한양행 이사님, 팀장님

이에 각 제약사와 소분판매업 최다 제휴 약국을 보유한 스타트업을 만나며 마케팅 제휴를 맺기 위한 컨택을 지속적으로 진행했다.

 

 

우리가 만든 BM은 위와 같았고 소분판매가 규제 샌드박스를 끝내고 법제화 된다면 충분히 수익화 할 수 있는 비즈니스 모델이라 생각했다.

 

 

사업 계획

커뮤니티에서 나오는 데이터를 수집해 해당 빅데이터를 가공하여 개인에게 맞춤화된 건강 관리 구독 서비스를 제공하고자 하였다.

 

 

 


 

 

느낀 점

주니어 개발자, 대학생으로서 경험할 수 있는 최고의 경험을 했다고 생각한다.

특히, 소마를 하면서 얻은 가장 큰 가치는 사람들이라고 생각한다.

구글, 마이크로소프트, 라인, LG, 카카오 등 굴지의 IT 대기업에서 현재 근무하고 계신 멘토님부터 창업 후 Exit에 성공하신 멘토님, 여러 스타트업에서 능력을 펼치며 성장시키고 있는 멘토님 등 정말 훌륭한 멘토님들께 지도를 받으며 인사이트를 넓히고 새로운 것들을 배워나갈 수 있었다.

또 젊은 나이에도 불구하고 정말 많은 것을 알고 열정적으로 프로젝트를 수행하는 동기 연수생들과 함께 경쟁하고 스터디하며 배워나갈 수 있었다는 것이 매우 뜻깊었던 것 같다.

 

소마는 내게 우물의 깊이를 알려준 곳이다.

학교라는 우물에 갖혀있던 내게 이 우물이 얼마나 깊은지, 저 위에는 얼마나 많은 사람들이 있는지, 또 이 우물에서 나오기 위해서 어떤 것을 해야하고 얼마나 열심히 해야할지 알려주었다.

덕분에 더 겸손한 자세로 배울 수 있었고 더 많은 성장을 갈구할 수 있게 해주었다.

 

분명히 아쉬운 점도 남지만 정말 최선을 다했기에 후회는 없다.

특히 인터뷰를 위해 직접 여러 병원에 전화를 돌리고 제약사들에 전화를 돌려 미팅을 잡고 그들 앞에서 PT를 한 경험은 정말 새로웠다. 특히 국내 제약사 2위 기업의 경우 영업 이사님까지 나오셨는데, 이러한 경험은 내게 뭐든 안되는 것은 없고 일단 부딪혀 봐야한다는 교훈을 주었다.

 

시원섭섭하다는 표현이 딱 맞는 것 같다.

앞으로 나의 미래가 기대가 되면서 또 매우 불안하기도 하다.

하지만 이 과정을 진행하면서 내 안에서 무언가 일어난 것은 분명하며 더 성장했다는 것이 느껴진다.

 

성공은 운이지만, 노력은 성공할 수 있는 확률을 높여주는 행위라고 생각한다.

실패하더라도, 결과가 좋지 못하더라도 최선을 다했다면 내 성공의 확률을 높였다고 생각하고 더 열심히 하려고 한다.

 

 

 


 

 

소마를 위해 소마 기간동안 항상 열심히 지원해주신 사무국 분들과 우리 팀을 위해 많은 도움 주시고 가르침 주신 전담 멘토이신 천두완 멘토님, 김태성 멘토님, 주영민 멘토님, 그리고 전담 멘토는 아니였지만 정기적으로 보며 함께해주신 김형국 멘토님, 강성재 멘토님께 진심으로 감사인사 드립니다. 정말 많이 배웠습니다.

 

소마에서 배운 것을 자양분으로 더 멋진 개발자가 되도록 하겠습니다.

감사합니다!! 😀🙇‍♂️

 

 

반응형