TinyPilot: 7개월 차
한 줄 요약
TinyPilot은 겪어도 좋은 문제를 마주하고 있습니다.
주요 내용
- TinyPilot의 매출이 놀라운 속도로 성장해 12월 1만 5,000달러에서 1월 4만 2,000달러로 뛰었습니다.
- TinyPilot 판매량 대부분은 긍정적인 YouTube 리뷰 하나에서 나왔습니다.
- 수요를 맞추기 위해 제가 허둥대면서 TinyPilot은 성장통을 겪고 있습니다.
목표 달성도
매달 초에 그달에 이루고 싶은 목표를 정합니다. 그 목표를 얼마나 달성했는지 정리해 보겠습니다.
TinyPilot 개발을 도울 프리랜서 개발자 고용하기
- 결과: 시험 고용을 한 번 진행했지만 잘되지 않았고, 현재 다른 개발자와 시험 고용을 진행하고 있습니다.
- 평가: A
새 개발자를 고용하는 일은 느리게 진행되지만, 계획대로 가고 있습니다. 시험 고용을 할 때마다 개발자가 더 빠르게 업무에 익숙해지도록 도울 방법을 찾아가고 있습니다. 앞으로 사람을 고용할 때 어떤 자질을 찾아야 하는지 파악하는 데도 도움이 됩니다.
관련 분야의 독자층을 보유한 블로거 또는 YouTuber 두 명에게 TinyPilot 리뷰 받기
- 결과: YouTube 리뷰 한 건을 받았고, 두 건이 진행 중입니다.
- 평가: A-
YouTuber가 새 영상을 만드는 데 얼마나 오래 걸리는지 과소평가했습니다. 새 리뷰 하나가 공개됐지만, 제가 11월에 연락한 결과입니다. 다른 YouTuber 두 명도 리뷰를 하겠다고 했지만, 아직 영상을 만드는 중입니다.
그렇기는 해도 리뷰 하나는 거의 감당하기 어려울 정도의 결과를 가져왔습니다. 자세한 내용은 아래에서 다루겠습니다.
Hit the Front Page of Hacker News로 매출 4,000달러 올리기
- 결과: 매출 2,600달러를 올렸습니다.
- 평가: C
이 강좌는 제가 기대했던 대로 진행되지는 않았습니다. 내용에는 자부심이 있지만, 예상보다 구매자가 훨씬 적습니다.
강좌를 홍보하기 위해 여러 가지 방법을 시도했지만, 판매에 눈에 띄는 영향을 준 방법은 하나도 없었습니다.
TinyPilot 통계
| 지표 | 2020년 12월 | 2021년 1월 | 변화 |
|---|---|---|---|
| 순 방문자 수 | 3,486 | 11,249 | +7,763 (+223%) |
| 총 페이지 조회 수 | 5,785 | 17,737 | +11,952 (+207%) |
| 판매 매출 | $15,358.31 | $41,992.92 | +$26,634.61 (+173%) |
| 기부금 | $9.00 | $0.00 | -$9.00 (-100%) |
| 총매출 | $15,367.05 | $41,992.92 | +$26,625.87 (+173%) |
TinyPilot에 엄청난 한 달이었습니다. 매출이 1만 5,000달러에서 4만 2,000달러로 뛰었습니다.
매달 저는 이렇게 생각합니다. “와, 운이 정말 좋았던 달이네! 다음에는 이런 일을 다시 해내지 못할 거야.” 그러면 다음 달에는 더 큰 성장이 이어집니다. 이번에도 운이 계속되기를 바랄 뿐입니다.
TinyPilot의 첫 YouTube 리뷰
1월 판매량 대부분은 한 곳에서 나왔습니다. 바로 전문가와 홈 엔터테인먼트 애호가를 위한 IT 하드웨어를 다루는 YouTube 채널 Craft Computing입니다.
작년 초, Proxmox 설치에 관한 훌륭한 튜토리얼을 통해 Craft Computing 채널을 처음 알게 됐습니다. 몇 달 뒤 채널 진행자가 IT 관리자로 일하던 직장을 그만두고 독립해 일하겠다고 발표했습니다. 저도 비슷한 경험이 있어 친근감을 느꼈습니다.
11월에 채널 진행자인 Jeff에게 연락해 TinyPilot을 리뷰해 볼 생각이 있는지 물었습니다. Jeff가 그러겠다고 해서 곧바로 제품 하나를 보냈습니다. 몇 달 동안 아무 소식이 없어서, 제가 보낸 Voyager가 기업들이 그에게 보내는 공짜 하드웨어 더미에 그냥 묻혀 있는 건 아닐까 생각하기 시작했습니다.
1월 12일 밤, 잠자리에 들 준비를 하고 있는데 Jeff에게서 리뷰가 방금 올라갔다는 이메일이 왔습니다.
정말 비현실적인 기분이었습니다. 여자친구와 거실의 큰 TV로 영상을 봤는데, 1년 동안 지켜보던 YouTube 진행자가 제 제품을 들고 거대한 화면 너머에서 저에게 직접 이야기하고 있었기 때문입니다!
Jeff는 TinyPilot을 마음에 들어 했고, 인상 깊었던 여러 부분을 소개했습니다. 영상 내내 Jeff가 갑자기 멈추고 이렇게 말할까 봐 불안했습니다. “아, 사실은… 생각이 바뀌었어요. 이 제품은 형편없습니다. 아는 사람 모두에게 절대 사지 말라고 전해주세요.” 다행히 리뷰는 처음부터 끝까지 긍정적이었고, 비판도 사소한 수준이었습니다.
결과는 강력했고 즉시 나타났습니다. 다음 날 주문 33건을 받아 매출 5,000달러를 올렸는데, 이는 이전 판매 기록을 훨씬 뛰어넘는 수치였습니다. 그다음 날에는 주문 수가 줄었지만 고가 키트를 구매한 고객이 더 많아서 총매출은 대략 같은 수준을 유지했습니다.


2021년 1월 TinyPilot의 일별 매출 및 주문 수
사흘째에는 상황이 진정될 거라고 예상했고 실제로 조금 누그러졌지만, 주문은 계속 들어왔습니다. 재고는 이 정도의 주문 폭증을 감당할 수 있도록 준비해 두었지만, 이렇게 오래 지속될 줄은 몰랐습니다.
TinyPilot의 주문 처리 담당자와 저는 첫 일주일 동안 주문을 따라잡았지만, 8일째에는 완전히 녹초가 됐습니다. 이틀 배송 기간 안에 대체할 수 없는 부품 몇 가지가 동났고, 잠시 대부분의 제품을 재입고 대기 상태로 표시해야 했습니다. 며칠 뒤에는 다시 정상 궤도에 올랐고, 주문량도 감당할 수 있는 수준으로 내려왔습니다.
TinyPilot의 첫 사후 분석
비난 없는 사후 분석은 Google에서 일하며 배운 가장 가치 있는 업무 방식 중 하나입니다. 큰 문제가 발생하면 먼저 안정적인 상태로 되돌린 다음, 무슨 일이 일어났는지 분석하는 보고서를 작성합니다.
이름에서 알 수 있듯이 이 문서는 누구도 비난하지 않습니다. “Michael이 멍청해서 잘못된 파일을 삭제하는 바람에 장애가 발생했다”라고 쓰는 일이 아닙니다.
사후 분석의 기본 전제는 팀원 모두가 똑똑하고 성실하다는 것입니다. 따라서 문제가 발생했다면 사람보다 시스템에 문제가 있었던 것입니다. 누군가가 어리석게 행동한 것처럼 보이는 장애의 근본 원인은, 예상 가능한 인간의 실수를 막도록 프로세스가 설계되지 않았다는 데 있습니다.
Craft Computing 리뷰 이후, 저와 주문 처리 담당자는 TinyPilot의 첫 사후 분석을 진행했습니다. 아래에는 우리가 발견한 주요 문제와 이를 완화하기 위해 적용한 변경 사항을 정리했습니다.
재고 목표가 너무 낮았다
저희는 스프레드시트로 재고를 관리합니다. 취급하는 각 부품마다 재고로 유지할 최소 수량과 최대 수량을 정합니다. 예를 들어 Raspberry Pi의 최소 수량은 40개, 최대 수량은 80개였습니다. 즉 Raspberry Pi 재고가 40개 아래로 떨어질 때마다 80개가 되도록 주문하는 방식입니다.

TinyPilot의 재고 스프레드시트
문제는 재고가 바닥나서 계획을 잘못 세웠다는 사실을 깨달을 때까지 이 목표를 조정하지 않았다는 것입니다. 그러다 재고 부족을 겪는 순간에는 너무 당황한 나머지 새로운 목표를 합리적으로 생각하기가 어렵습니다.
- 해결책: 최근 주문량을 바탕으로 재고 목표를 매달 조정하도록 일정을 잡습니다.
- 해결책: 다음 주문 급증은 지금까지 발생한 어떤 급증보다 더 심할 것이라고 가정합니다.
- 해결책: 부품이 하나라도 동나거나 품절 직전까지 간 적이 있다면 해당 부품의 재고 목표를 두 배로 늘립니다.
긴급성이 명확하게 드러나지 않았다
재고 스프레드시트를 사용하는 표준 업무 흐름은 최소 수량 아래로 떨어진 품목을 보충하는 것입니다. USB 케이블이 재주문 기준 아래로 내려갔을 때도 평소 업무 흐름에 따라 일반 지상 배송으로 새 제품을 주문했습니다.
고객들이 너무 빠르게 구매하고 있어서 새 배송 물량이 도착하기 전에 재고가 0이 될 예정이라는 사실을 알아차리지 못했습니다. 다음 날에는 이후에 도착할 배송 물량이 올 때까지 버틸 수 있도록 익일 배송으로 추가 주문을 넣었습니다.
- 해결책: ‘재고 있음’ 열의 수량이 위험할 정도로 낮아지면 강조 표시합니다.
- 해결책: Amazon Business Prime으로 업그레이드해 이틀 배송을 당연한 기본 옵션으로 만듭니다.
- 해결책: 추세에 기반한 알림 기능이 포함된 재고 관리 소프트웨어를 찾아봅니다.
주문 처리 시간이 너무 짧다
TinyPilot을 처음 시작했을 때는 영업일 기준 하루 안에 기기를 배송하겠다고 약속했습니다. 하지만 하루 만에 처리하는 방식은 계속 작업 맥락을 전환하고 주문을 서둘러 내보내야 했기 때문에 지속할 수 없다는 사실이 곧 분명해졌습니다. 몇 주 뒤에는 공지한 처리 시간을 이틀로 변경했습니다.
YouTube 리뷰 이후 일주일 동안 허둥대다가 제품을 재입고 대기 상태로 표시해야 했습니다. 하지만 배송 약속이 사흘이었다면 재입고 대기를 피할 수 있을 만큼 여유가 있었을 것입니다. 이전에 재입고 대기나 품절 직전 상황을 겪었던 사례의 약 80%가 고작 하루 차이로 발생했다는 사실을 깨달았습니다.
이틀이라는 기간은 너무 큰 스트레스를 만들고 있었습니다. 어차피 대부분의 주문은 다음 날 배송하고 있고, 고객도 공지된 처리 시간이 이틀인지 사흘인지 크게 신경 쓰지 않을 것입니다.
- 해결책: 공지하는 주문 처리 시간을 사흘로 늘립니다.
부품 묶음을 재주문하면 불필요한 인지 부담이 생긴다
부품 중에는 개별적으로 구매하는 것도 있고, 한 포장에 두세 개씩 묶음으로 구매하는 것도 있습니다. 예를 들어 전원 어댑터는 세 개 묶음으로 구매합니다. 그런데 재고 스프레드시트에는 전원 어댑터의 묶음 수가 아니라 절대 수량이 표시됩니다.
주문이 몰렸을 때 전원 어댑터 150개를 주문하려고 했지만, 실수로 150개짜리 3팩을 주문해 총 450개를 주문했습니다.
초과 주문은 사람의 실수였지만, 우리 시스템이 어떻게 오류를 유도하는지 보여주는 사례이기도 합니다. 주문을 넣는 사람은 품목마다 다른 포장 수량을 고려해 머릿속으로 계산해야 합니다.
해결책: 포장당 수량을 반영한 ‘재주문 수량’ 열을 스프레드시트에 추가합니다.
TinyPilot은 어떻게 규모를 키울 수 있을까?
TinyPilot은 제가 예상했던 것보다 훨씬 빠르게 성장하고 있습니다. 다행히 지금까지는 기존 프로세스로도 이 성장을 감당해 왔지만, 계속 성장한다면 머지않아 모든 것이 부하를 견디지 못하고 무너지기 시작할 것입니다. 몇 가지 측면에서 성장을 확장하기 위해 어떤 계획을 세우고 있는지 정리해 보겠습니다.
고객 지원 확장
TinyPilot 고객 수가 늘어나면서 지원 이메일도 더 많이 받고 있습니다. 어떤 날에는 근무 시간의 절반까지 기술 지원에 쓰기도 합니다.
Lunch Money 창업자 Jen Yip의 블로그 글이 떠올랐습니다. Jen은 혼자서 사업의 모든 측면을 관리하면서, 사용자가 자주 발생하는 문제를 해결하는 데 도움이 되는 기능을 앱에 구현해 지원 부담을 줄이고 있습니다.
TinyPilot 지원 요청의 절반가량은 사실 제품에 기능이 빠져 있어서 발생합니다. 흔히 받는 요청 중 하나는 “WiFi를 어떻게 켜나요?”입니다. 지금은 명령줄에서 켜는 방법을 설명하는 링크를 보내고 있지만, 사용자가 TinyPilot 웹 인터페이스에서 바로 할 수 있어야 하는 작업입니다.
TinyPilot 소프트웨어를 계속 개발하면서 사용자의 혼란을 없애는 기능을 우선적으로 구현하고, 문제가 발생했을 때 디버깅 도구에 더 쉽게 접근할 수 있도록 만들고 있습니다.
제조 확장
3D 프린팅 부품은 설계를 빠르고 저렴하게 수정할 수 있다는 점에서 훌륭합니다. 단점은 3D 프린팅이 규모를 키우기 어렵다는 것입니다. 제가 원하는 소재로 Voyager 케이스를 제작하는 공장은 일주일에 40개밖에 생산하지 못하며, 이 생산량은 곧 병목이 될 것입니다.
그다음 단계는 사출 성형입니다. 기본적으로 제조업체가 케이스의 강철 또는 알루미늄 금형을 만든 다음, 그 안에 플라스틱을 채우고 압착해 형태를 만듭니다. 금형 제작은 느리고 비용도 많이 들지만, 일단 금형을 만들고 나면 낮은 비용으로 하루에 1,000개를 생산할 수 있습니다. 여러 업체에 견적을 요청했지만 2만~4만 달러 수준으로 돌아왔고, 지금 단계에서는 조금 너무 비쌉니다.
3D 프린팅을 병렬화할 수 있을지 알아보기 위해 다른 공장에도 연락했습니다. 문제는 제가 선호하는 소재가 3D 프린팅 공장에서는 흔하지 않은 탄소 섬유 소재라는 점입니다. 따라서 이 소재를 취급하는 다른 업체가 많지 않습니다. 취급하는 업체들이 제시한 가격은 현재 지불하는 비용보다 10~15배 높았습니다. 그래도 Voyager의 마진은 충분히 높기 때문에 정말 다른 방법이 없다면 케이스 비용이 더 올라가도 수익을 낼 수 있습니다.
다른 공장 중 한 곳에서는 더 빠르게 출력되는 대체 소재로 비슷한 결과를 얻을 수 있다고 했습니다. 그 업체에 샘플을 요청하고, 주 거래 공장과도 대체 소재에 관해 이야기하고 있습니다.
여자친구이자 재고 관리자인 사람은 회로 기판 테스트와 Voyager 조립 같은 최종 제조 단계를 담당합니다. 전일제 대학원생인 동시에 주문 처리, 재고 관리, 조립 및 기타 업무까지 맡기에는 시간이 부족해지는 시점이 올 수도 있습니다. 그래서 그녀가 일할 수 있는 시간이 한계에 이르면 어떤 업무를 외주화할 수 있을지 검토하고 있습니다.
개발 확장
TinyPilot 운영의 다른 모든 일을 처리하다 보니 소프트웨어 작업을 할 시간은 안타깝게도 거의 없습니다. 12월에는 부족한 부분을 메워 줄 파트타임 개발자를 찾기 시작했습니다. 업무와 협업 방식을 설명하는 다음 두 문서를 작성해 몇몇 소규모 채널에 공유했습니다.
고용하는 프리랜서 직군 중 소프트웨어 개발은 언제나 가장 큰 도전입니다. 소프트웨어에 대한 기준이 높기 때문에 품질과 유지 보수에 비슷한 열정을 가진 개발자를 찾기가 어렵습니다.
지원자를 면접하는 대신 곧바로 시험 고용을 진행합니다. 첫 번째 고용은 잘되지 않았지만, 그 개발자는 과정 자체에는 만족했다고 말했습니다. 또한 새로운 개발자가 코드베이스에 더 쉽게 익숙해지도록 만드는 방법을 찾는 데도 도움이 됐습니다.
기존 프로젝트
아직 유지 관리하고 있지만 개발의 주요 초점은 아닌 프로젝트들의 간단한 소식을 전합니다.
Hit the Front Page of Hacker News
| 지표 | 2020년 12월 | 2021년 1월 | 변화 |
|---|---|---|---|
| 순 방문자 수 | 2,595 | 1,042 | -1,553 (-60%) |
| 총매출 | $1,431.00 | $2,565.22 | +$1,134.22 (+79%) |
개발자 대상 블로그 운영에 관한 강좌인 Hit the Front Page of Hacker News가 마침내 1월에 출시됐습니다. 출시를 전후해 판매량이 뛰었지만, 제가 예상했던 것보다는 훨씬 적었습니다. 이 강좌의 목표는 연말까지 2만 달러를 버는 것이었습니다. 지금 상황을 보면 달성하기 어려워 보입니다.
지금까지의 판매량에 실망했다고 Cory Zue에게 말했더니, Cory는 TinyPilot 수익 때문에 제가 얼마나 눈높이가 높아졌는지 놀렸습니다. 이 강좌는 1월 한 달 동안 제가 인디 개발자로서 첫해 전체에 번 것보다 더 많은 수익을 올렸습니다.
이번 달 말에는 강좌 녹화와 마케팅에서 배운 점에만 초점을 맞춘 회고 글을 쓸 예정이니, 더 자세한 이야기를 기대해 주세요.
Is It Keto
| 지표 | 2020년 12월 | 2021년 1월 | 변화 |
|---|---|---|---|
| 순 방문자 수 | 49,373 | 80,177 | +30,804 (+62%) |
| 총 페이지 조회 수 | 93,242 | 182,367 | +89,125 (+96%) |
| 도메인 평점(Ahrefs) | 10.0 | 11.0 | +1.0 (+10%) |
| AdSense 수익 | $334.72 | $677.36 | +$342.64 (+102%) |
| Amazon 제휴 수익 | $149.99 | $238.02 | +$88.03 (+59%) |
| 총매출 | $484.71 | $915.38 | +$430.67 (+89%) |
Is It Keto는 제가 사이트를 전혀 손대지 않았는데도 역대 최고 실적을 기록했습니다. 다이어트와 관련된 사이트라서 새해 결심과 맞물려 언제나 관심이 급증합니다.
Zestful
| 지표 | 2020년 12월 | 2021년 1월 | 변화 |
|---|---|---|---|
| 순 방문자 수 | 507 | 419 | -88 (-17%) |
| 총 페이지 조회 수 | 1,511 | 1,194 | -317 (-21%) |
| RapidAPI 수익 | $103.33 | $155.50 | +$52.17 (+50%) |
| 총매출 | $103.33 | $155.50 | +$52.17 (+50%) |
Zestful은 유지 관리 모드인데도 조금씩 성장하고 있습니다. 오래전부터 이용해 온 고객 한 명의 사용량이 늘어난 것이 성장의 원인으로 보입니다.
마무리
무엇을 해냈나?
- Hit the Front Page of Hacker News를 출시했습니다.
- TinyPilot Pro를 베타에서 정식 출시 버전으로 전환했습니다.
- TinyPilot의 첫 사후 분석을 진행했습니다.
- 프리랜서 개발자 두 명을 시험 고용했습니다.
배운 점
- YouTube 리뷰는 놀라울 정도로 강력하지만, 시간이 걸립니다.
- 첫 리뷰의 결과를 보니 앞으로 더 탐색하고 싶은 유입원임은 분명하지만, 새로운 리뷰를 성사시키려면 몇 달이 걸릴 것입니다.
- 성장할수록 프로세스의 전제가 여전히 유효한지 검토해야 합니다.
- 이것은 제가 계속해서 배워야 하는 교훈입니다. 어떤 업무를 위해 프로세스를 정하면 습관이 됩니다. 하지만 그러다 프로세스에 대해 비판적으로 생각하지 않게 되고, 더 이상 사실이 아닐 수도 있는 조건을 기준으로 설계했다는 점을 깨닫지 못합니다.
- 한 걸음 물러서서 프로세스가 여전히 최적인지 정기적으로 검토하는 것이 중요합니다.
다음 달 목표
- 블로거 또는 YouTuber 다섯 명을 TinyPilot 제휴 프로그램에 참여시킵니다.
- 지원 또는 제조 비용을 줄이는 기능 두 가지를 TinyPilot에 추가합니다.
- TinyPilot의 랙 장착형 버전에 대한 고객 10명의 의견을 수집합니다.
글을 무작위로 읽기