46P by xguru 2022-03-07 | favorite | 댓글 2개
  • 업타임 체커인 OnlineOrNot을 Next.js + AWS Lambda로 7일만에 만들어서 런치하고 1년간 운영한 경험

200개나 되는 경쟁자가 있음에도 서비스를 유지하는 비법은?

  • 주중 평일에 딱 두시간만 일함
  • 고객의 고통을 해결하는 기능에 집중
  • 엄청(ruthlessly) 반복적. 2시간에 기능 구현이 안되면 스코프를 줄여서라도 배포하고 그걸 반복

✓ 1년간 배운 교훈들

문제를 해결하는 것이지, SaaS 구독을 판매하는게 아님

  • 고객 입장에서 생각하기
  • "이 기능을 만들면 고객이 찾아올꺼야!"가 아니라 "고객들의 이 짜증나는 문제를 해결해서 도와줘야 겠다" 가 되어야 함
  • SaaS는 문제를 해결하는 많은 방법중 하나일 뿐

문서는 사용자 경험의 일부임

  • "개발자는 문서를 읽지 않는다" 라고 말하지만 그건 일부만 맞음
  • 그들은 읽지 않고, 제목을 훑어봄

모바일을 위해 만들기

  • B2B SaaS에 대한 일반적인 믿음과 달리 사람들은 폰에서 많이 일을 함
  • OnlineOrNot은 50% 정도가 모바일에서 옴
  • 모바일에서 빠르게 계정을 만들고 모니터링할 페이지를 몇 개 추가한 후에 가끔 노트북/데스크탑에서 체크하는 경향이 있음
  • 6개월간 모바일을 지원하지 않았는데, 휴대폰으로 가입했던 사람들은 빠르게 이탈했음
  • 결국 반응형 모바일 페이지를 만들었더니 이제 새로운 모바일 사용자가 게속 늘어나는 중

사람들에게 어떻게 알게 되었는지 묻기

  • 엄청 가치있었던 코드 변경중 하나는 가입한 사용자에게 "어떻게 OnlineOrNot을 알게 되셨나요?" 였음
  • 잠재 고객을 끌어들이기 위한 채널은 여러가지가 있고, 어떤걸 강조할 지를 알아야함

가끔은 직접 실수를 할 필요가 있음

  • 다른 사람의 실수를 반복하지 않기 위해 책을 많이 읽기도 했는데, 가끔은 실수를 할 필요가 있음
  • 해커뉴스 프론트에 걸렸을때 6000명이 왔지만 몇 백명이 회원 가입하려다 했지만 그중 10명도 안되는 사람만 가입하는 걸 보고 뭔가 잘 못 되었다는 걸 깨달음
  • 회원 가입폼에서 75% 이탈율을 보였음. A/B테스팅(내가 만든 DeployWithFlags 이용)을 통해서 추가 OAuth 프로바이더를 붙이고 50%까지 떨어뜨렸음

가격 책정이 정말 어려움

  • 가격이 너무 높으면, 당신의 앱이 모든 걸 수행해 줄거라 믿는 사람들이 이탈함
  • 가격이 너무 낮으면, $9 냈으니 앱을 다시 작성하길 원하는 고객들이 생김
  • 어려운 고객은 환불해주고, 가격을 인상하고, 계속 나아가기
  • 가격 책정에 대해서 많은 실험을 할 준비를 할 것

MRR(Monthly Recurring Revenue)에 너무 집중할 필요는..

  • MRR은 초기에 비즈니스가 어떻게 되어가는지 측정하는 매우 형편없는 방법임
  • 몇주 전에 고친 것들이 현재 MRR에 영향을 미치게 되므로, 많은 고객이 확보 될때 까지는 이런 변경들이 실제 효과가 있는지 알기 어려움
  • DAU 나 몇몇 고객 성공 지표(페이지 확인, 이미지 생성등)가 MRR보다 더 유용했음
  • 이런 값들이 실제 사용자가 제품을 사용하는지, 그들에게 가치를 가져다 주는지를 알 수 있게 함

유료 티어에도 무료 트라이얼은 필요

  • 무료 티어가 사람들을 끌어 들이고 당신의 제품에 대해 얘기하도록 만드는 좋은 방법이지만
  • 무료 티어보다 유료 티어가 훨씬 좋다면, 이 유료에 있는 "좋은 기능(Good Stuff)"을 맛보게 하는 방법은 필요함
  • 이걸 깨닫는데 11개월이 걸렸음
  • 무료 티어를 제공하지만, 신규 사용자의 95%는 프로 티어의 무료 평가판을 선택

더 많은 트래픽을 가져오기는 어렵고, 현재 트래픽이 하는 것을 변경하기는 쉬움

  • 인터넷에서 주목을 받는 것은 길고, 느린 게임
  • 몇달에 걸쳐서 양질의 콘텐츠 마케팅을 꾸준히 한다면 독자수는 하루 1~2명에서 수백명으로 늘어날 것
  • 사이트에 방문하는 사람 수를 늘리는 것은 정말 쉬운 일이 아님
  • 반면에 사람들이 사이트에 방문했을 때 하는 것들은 당신이 영향을 줄 수 있고 오늘 바로 할 수 있음
    (OAuth 로그인 프로바이더를 추가하는 일 같은 것)

콘텐츠 마케팅은 당신에게 시간을 벌어줌

  • 콘텐츠 마케팅에 투자하면 비즈니스가 일정 기간 동안 자체적으로 운영하게 함
  • 일년 동안 몇년의 글이 바이럴 되면서 수만명의 방문자를 끌어들였음. 내가 아무 것도 하지않아도 약 1500명의 사람들이 이 글을 보기 위해 유기적으로 방문하는 중

작게 자주 배포하기

  • 사람들은 제품 개선을 위해 특정 기능을 만들라고 제안하겠지만, 그들은 아마도 그 기능을 사용하지 않을 것
  • 그들은 아마도 도움이 되려고 하는 것이며, 다른 제품에서 유사한 기능을 봤을 것
  • 당신이 SaaS를 처음 운영하고 있기에, 사람들이 당신에게 얘기를 해주는 것에 기뻐하며, 그들을 위한 기능을 구축하려고 서두르게 될 것
  • 기능을 만들지 말라는 말은 하지 않겠음(나는 그런 조언을 받았다는 거고, 어쨋든 사용하지 않는 그 기능을 만들었음)
  • 그 기능을 어떻게 사용할 것인지 묻고, 다른 고객에게 그 문제를 어떻게 처리하는지 물어보고, 해당 기능의 가장 작은 버전을 만들어보고, 다른 사용자들이 그 기능을 쓰는지 살펴 봐야함
    한 사람만 사용하는 기능을 만들고 싶지는 않잖아요?
  • 몇 달을 공들인 것 보다 몇시간만 들인 아무도 원하지 않는 기능을 제거하는게 훨씬 덜 괴로움

배포를 먼저 하고, 나중에 규모(Scale)에 대해 걱정할 것

  • OnlineOrNot의 첫 버전에서는 아키텍처를 전혀 최적화 하지 않았음
    (각 업타임 체크마다 DB커넥션을 유지하고 있어서 사용자가 많아지기 어려웠음)
  • 또한 사람들이 필요로 하지 않는 것을 만드는 것보다 불완전한 UI에 당황하는 것을 선호함
  • 나중에 아키텍처를 재설계해서 작은 RDS 인스턴스 하나로 주당 수백만건이 처리되게 만들었음

생각보다 문제 해결에 많은 시간을 들이기 어려움

  • 1년간 프로그래밍에 쓴 시간 중 절반은 내가 해결하고 싶은 문제를 실제 해결하는데 썼음
  • 다른 절반은 SaaS 플랫폼을 구축하는데 사용
  • 여러 유형의 사용자 인증, 평가판, 온보딩, 팀 관리기능, 인보이스 관리기능, 수명주기 이메일 같은 SaaS 플랫폼 일들이 필요함
  • 많은 것들을 아웃소스 할 수 있음(Stripe가 없었다면 아마 구독형태로 팔지 못했을 것)
  • 하지만 항상 맘에 안드는 것들은 있고, 좀 다르게 처리하고 싶으면 직접 만들어야 함

라이브 서비스를 기획하고 운영하기 위한 꿀팁이네요!!

무료 티어가 있더라도 유료 티어에 무료 트라이얼은 필요하다 이 부분이 정말 중요한 것 같아요.