TinyPilot: Month 34

Michael Lynch

TinyPilot:第 34 個月

原文由 Michael Lynch 發布,訂閱此部落格

一句話總結

擺脫「緊急模式」

初次來訪嗎?

嗨,我是 Michael。我是一名軟體開發者,也是 TinyPilot 的創辦人,這是一家獨立的電腦硬體公司。我在 2020 年創立這家公司,現在每月營收約 6 至 8 萬美元,並聘雇了另外七位員工。

每個月,我都會像這樣發表一篇回顧,分享公司營運與我個人職涯的近況。

重點回顧

  • 我們已完成將 TinyPilot 的出貨作業轉移至第三方廠商。
  • 在地團隊正擺脫長達數月「緊急模式」的狀態。
  • 現在生產速度不再是瓶頸,我可以選擇一個能讓獲利最大化的價格。

目標評分

每個月初,我都會設定想完成的目標。以下是本月的達成狀況:

將所有產品轉移至 3PL 廠商

  • 結果:我們的 3PL 廠商現在已負責所有產品的出貨。
  • 評分:A

轉移過程很順利,對公司來說是一大進展。由 3PL 處理日常訂單出貨後,我們彈性大了很多,不必再每週六天都要有人在辦公室。員工依然會定期進辦公室,但不再有必須趕在當天收件前把所有事做完的壓力。

選定一家代工廠來接手 TinyPilot 的裝置組裝並啟動轉移流程

  • 結果:仍在洽談中,尚未正式選定。
  • 評分:B-

我找到了一家滿意的代工廠,但還沒正式簽約。我還在等對方的正式報價與時程。他們非正式、樂觀預估的第一批量產時間是 2023 年 10 月。

發布 TinyPilot Pro 新版本

這個版本在功能上沒什麼亮點,但它為使用者提供了從 Debian Buster 遷移的路徑,Buster 現在已是舊版 OS。停止支援 Buster 意味著可以移除程式碼中大量針對該版本 OS 的條件式邏輯。

TinyPilot 數據

指標2023 年 3 月2023 年 4 月變化
不重複訪客7,4436,560-883 (-12%)
總瀏覽量17,90415,034-2,870 (-16%)
銷售營收$83,529.40$82,060.84-$1,468.56 (-2%)
企業訂閱$290.70$290.700
權利金$4,820.75$2,369.08-$2,451.67 (-51%)
總營收$88,640.85$84,720.62-$3,920.23 (-4%)
獲利$43,952.10$10,295.55-$33,656.55 (-77%)

這些數字看起來有點嚇人,因為所有數據都在下滑,但實際差距並不大。總營收只掉了 4%。獲利下滑,只是因為支出本來就不是平均分布。我對平均每月 2 至 3 萬美元的獲利水準,依然抱持正向看法。

跨過 3PL 的難關

過去幾個月,TinyPilot 的在地團隊幾乎是以 100% 的產能滿載運轉,所以我的首要任務就是想辦法幫他們減輕負擔。

要減輕工作量,最划算的做法之一就是完成轉移到第三方物流(3PL)廠商。從 TinyPilot 成立以來,我們都是直接從辦公室出貨。改用 3PL 後,我們會先將產品批量運送到倉庫,再由 3PL 負責日常的接單與出貨作業。

把出貨外包給 3PL 肯定能省下不少工作,但矛盾的是,光是轉換本身就需要額外投入心力。

一旦把產品運到 3PL,大約還需要一週時間,3PL 才有辦法開始處理訂單。這意味著我們必須多準備一週份的庫存——在我們已經快跟不上現有訂單量的情況下,這可不是件小事。

我本可以關店一週來完成轉換,但那等於放棄 1 至 2 萬美元的銷售額。相反地,我採取了幾個措施來減輕在地團隊的負擔,讓他們能專心備貨。

第一,減少廣告支出。這是理所當然的決定。既然已經有接不完的需求,就沒必要再花錢去吸引新客戶。

第二,調漲價格。我分好幾波調高了 TinyPilot 的價格,藉此放緩銷售速度,同時盡量減少營收損失。

最後,我也投入協助客服。在地團隊原本要同時負責組裝、出貨和客服,我每幫他們省下一小時的客服時間,就能讓他們多一小時去組裝裝置。

幸運的是,這些努力奏效了。5 月初,在地團隊已經累積了足夠多一週庫存量的成品,得以運往 3PL。3PL 上線後,在地團隊的工作量大約減少了 15%。

轉移到 3PL 的過程算是相當順利,但如果重來一次,有些地方我肯定會規劃得更好。我整理了一份向 3PL 廠商提問的問題清單,給第一次接洽 3PL 的人參考(或是未來如果我要換廠商時自己用)。

擺脫「緊急模式」

即使已將出貨外包給 3PL,情況也沒有如我預期的那樣輕鬆。倉庫裡只有幾天的庫存,團隊仍得手忙腳亂地趕工,補充 3PL 的庫存。

我不禁懷念起一年前在地團隊還有餘裕的時候。那時我最大的煩惱,反而是錯失了讓他們承擔更多責任的機會

今年情況完全反了過來。許多原本該由在地團隊做的事,都由我接手來做。而且整體氛圍一直是疲於應付工作量,而不是從容處理。像是文件整理或庫存規劃這類長期工作,都被擱置了。

最糟的是,我甚至無法為亮眼的銷售表現感到興奮。當我查看 Shopify,看到單日賣出 10 台以上時,第一個念頭不是慶祝,而是「糟了,這會讓我們更難在倉庫備足庫存。」

我覺得等到倉庫有了相當於一個月庫存時,就能鬆一口氣了。我用試算表快速估算了一下,以目前的銷售與生產速度,大概要到 7 月才能達到那個水位,但我不想讓大家再這樣緊繃兩個月。

試算表計算顯示以目前銷售與生產速度下的庫存餘額

依我的估算,要到 7 月才能在 3PL 倉庫建立起健康的庫存水位。

過去幾個月,我一直在考慮是否要再聘一名在地員工。我之所以猶豫,是因為預期把出貨交給 3PL 後工作量會下降,等到把生產也交給代工廠後,工作量更會大幅減少。到時候,在地團隊的工作就只剩下客服,而我不認為客服的工作量需要三個人。

看到轉移到 3PL 後工作量依然吃緊,我又重新考慮增聘人手的想法。然後我突然靈光一現:如果半年後工作量真的變少,我一開始就可以把它當作短期職缺來徵才。

我在 craigslist 和當地的 Facebook 社團貼出徵才訊息。兩週內收到 18 份履歷,面試了 5 個人,最後發出一份錄用通知,對方也接受了。新員工本週就會開始上班。

自從決定增聘第三名員工後,團隊的氣氛明顯有了轉變。大家不再覺得需要為了短期目標而倉促趕工,整個人放鬆許多,也重新開始投入文件整理與長期規劃。

什麼價格能讓獲利最大化?

過去兩個月,我一直調高 TinyPilot 的價格來降低銷售量。我刻意把價格訂得偏高,好讓整體銷量下降,爭取時間補上庫存。

現在我們已經喘過氣來,也有更多產能可以組裝裝置,我可以不再為了產能瓶頸而定價,而是以獲利最大化為目標來定價。

上個月我已經做過一些價格實驗,但現在有了更多數據,來看看數字呈現什麼樣貌。

Voyager 2a USB-C

價格期間天數日均銷量日均營收日均獲利
$379Feb. 13 - Mar. 6225.0$1,895$1,220
$399Mar. 7 - Mar. 1265.7$2,261$1,496
$429Mar. 13 - Apr. 10294.6$1,953$1,338
$499Apr. 11 - May 3233.3$1,671$1,219
TinyPilot Voyager 2a(USB-C)價格與每日營收及獲利的關係圖

上個月,我對於 TinyPilot 需求的無彈性感到驚訝。我本來預期漲價後銷量會掉得更多。有了更多數據後,需求曲線比我想的更接近預期。價格調漲 120 美元(32%),訂單量減少了 34%。

有趣的是,379 美元和 499 美元兩個價位的獲利幾乎完全相等(分別是每天 1,220 美元與 1,219 美元)。以 499 美元的價格,整體獲利其實會更高,因為銷量少了 34%,意味著長期的支援成本也會更低。

Voyager 2a PoE

價格期間天數日均銷量日均營收日均獲利
$478Feb. 13 - Mar. 6221.3$630$426
$498Mar. 7 - Mar. 1262.5$1,245$858
$528Mar. 13 - Mar. 1971.3$679$480
$558Mar. 20 - Apr. 10221.1$609$440
$638Apr. 11 - May 3230.9$583$441
TinyPilot Voyager 2a(PoE)價格與每日營收及獲利的關係圖

高階 PoE 版本的客戶,似乎對 478 至 528 美元之間的價格不太敏感。在這個區間內,他們的購買頻率大致相同,不過樣本數還很小。

最賺錢的價格是 498 美元,不過這個數據也很可能只是因為統計期間較短而產生的異常值。

決定:以 $399 + $99 的價格銷售

定價的甜蜜點似乎是基礎款賣 399 美元,PoE 升級版加 99 美元(498 美元)。TinyPilot 在這個價位創造了最高的獲利。雖然該期間的樣本數較小,但這個價格也接近其他價格所呈現的曲線頂點。

我喜歡 399 美元這個基礎價位的另一個原因是,它對像我這樣的人來說仍在合理範圍內。如果三年前我看到像 TinyPilot 這樣的產品,我會覺得:「好,399 美元,為了我的 homelab 花這筆錢很值得。」

業餘專案

ScreenJournal

我持續開發 ScreenJournal,這是我用來和朋友分享電影推薦的開源網頁應用程式。

4 月份我新增的主要功能,是讓使用者能夠 別人的影評留言。我沒有使用任何現成的留言套件,完全是自己從頭實作的。效果如下:

我在 4 月為 ScreenJournal 新增的留言功能示範

我對 ScreenJournal 做的另一個重大改動,是將端對端測試從循序執行改為平行執行

我在做網頁應用程式的端對端測試時,一直為了共用資料庫的問題所困擾。我始終搞不懂其他開發者是怎麼繞過這個問題的。

以前,我處理共用狀態問題的方式,是在每次端對端測試前重置資料庫。這樣做很慢,而且因為所有測試都共用同一個資料庫,一次只能跑一個測試。

我目前的解法是為每個客戶端指派一個 cookie,並將該 cookie 關聯到一個獨立的記憶體內 SQLite 資料庫。這樣測試之間就不會透過資料庫共享狀態,因此可以平行執行。我比以前更喜歡這個解法,但還是覺得自己像在重新造輪子,很好奇讀者是否知道更成熟的作法。

總結

完成了什麼?

  • 完成轉移至 3PL 倉儲廠商。
  • 發布 TinyPilot Pro 2.5.4。
  • 參加 Microconf US 2023。
  • 為 TinyPilot 辦公室聘請了一位新員工。
  • 處理了 Section 174 的報稅難題,處理 2022 年的稅務。

學到的教訓

  • 有很多求職者其實很能接受短期職位。
    • 我原本一直避免再聘第三個人,是擔心這個職位的需求減少後該怎麼辦。後來我才發現,一開始就說明這是短期職位就好,而且有不少求職者很樂意、甚至更偏好短期工作。

下個月的目標

  • 協助最新的 TinyPilot 員工入職。
  • 達成 9 萬美元的營收。
  • 找到三位有興趣評測 TinyPilot Voyager 2a 的 homelab 部落客或 YouTuber。

本文章由 muse-spark-1.2-contributor 進行翻譯

留言