TinyPilot: Month 12

Michael Lynch

TinyPilot:第 12 個月

一句話總結

我感到陷入困境,正努力爭取更多時間。

亮點

  • 我在兩個已停滯數月的領域上仍難以擺脫困境:硬體開發與招聘。
  • 我正與一家德國經銷商合作,開始在歐盟境內銷售 TinyPilot。

目標評分

每個月一開始,我都會宣告當月想完成的目標。以下是我達成這些目標的情況:

發布新版 TinyPilot

  • 結果:發布 TinyPilot 1.5.1
  • 評分:A

這次版本發布順利且準時。雖然沒有特別令人興奮的新功能,但我們優化了現有功能並償還了技術債。

創造 3.5 萬美元的 TinyPilot 營收

  • 結果:創造 2.9 萬美元營收
  • 評分:B-

本月營收下滑,主因是我在行銷上的投入減少。儘管過去兩個月沒有大力推動行銷,營收仍能維持穩定,讓人鬆了一口氣,但我需要在七月加把勁。

打造內建 Power over Ethernet(乙太網路供電) 的 TinyPilot Voyager 2 原型

  • 結果:將專案範圍縮減為更精簡、且不含 Power over Ethernet 的 Voyager
  • 評分:D

這部分的進展不如預期。即使我大幅提高願意為 PoE 零組件支付的價格,合作的電機工程夥伴仍找不到任何庫存。

我們最終決定放棄將 PoE 作為 Voyager 2 的功能,改為減少外部線材與連接器的數量。第一個原型可能要到七月中旬才會完成。

TinyPilot 數據統計

指標2021 年 5 月2021 年 6 月變化
不重複訪客7,2836,339-944 (-13%)
總瀏覽次數13,26711,514-1,753 (-13%)
銷售營收$38,767.77$29,446.46-$9,321.31 (-24%)
總營收$38,767.77$29,446.46-$9,321.31 (-24%)
獲利$6,858.72-$9452.32N/A

所有數據都下滑,我認為主因是忽略了行銷。

獲利雖然下滑,但實際情況並沒有看起來那麼嚴重。Raspberry Pi 是 TinyPilot 成本最高的零組件,而我的 Pi 成本已大幅上升。由於持續的晶片短缺,我不得不將庫存量加倍以度過難關。我也必須從 2 GB 機型升級到價格貴上一倍的 4 GB 機型,因為 2 GB 機型在各地皆已缺貨。目前我還沒找到更好的方式在這些數據中呈現庫存價值。

尋找釋出時間的方法

我最近讀了 The Goal(《目標》) 這本書,內容主要探討企業的「瓶頸」。瓶頸是指系統中的限制因素。舉例來說,假設有一個產品需要經過兩台機器:機器 A 與機器 B。如果機器 A 每週可處理 100 個單位,而機器 B 每週可處理 500 個單位,那麼機器 A 就是瓶頸。即使你增加機器 B 的數量或提高其產能,對事業也毫無幫助,因為在你增加機器 A 之前,每週仍只能生產 100 個單位。

在 TinyPilot 發展初期,我將出貨流程系統化,讓自己不再成為瓶頸。我聘請了一位庫存管理人員,確保客戶訂單能每天出貨,無需我親自參與。

如今,出貨環節的瓶頸僅在於市場需求。我們通常每天出貨一至五筆訂單,但如果銷售額提升,在出貨流程遇到瓶頸之前,我們很可能可以多出貨五倍的訂單。

儘管如此,事業中仍有數個由我卡住瓶頸的領域:行銷、客戶支援、管理、軟體開發與硬體開發,僅舉幾例。

如同我上個月所意識到的,我的管理職責已大幅膨脹到幾乎佔據我所有時間。我在其他領域僅能勉強維持,卻感覺毫無進步。而我之所以忽略行銷,是因為它屬於重要但不緊急的事項。

我持續尋找方法,將更多工作委派給與我共事的夥伴。以下是我上個月採取的做法:

  • 避免親自處理已有人受訓可執行的工作(例如:回報錯誤,而非自行調查或修復)
  • 賦予在地員工更多職責(例如:聯繫供應商訂購新零件並安排取貨)

以下則是我計畫在七月執行的事項:

  • 向在地員工示範我如何研究行銷機會,讓他們能在過程中承擔更多前期作業。
  • 為技術支援制定工作手冊,讓在地員工能處理簡單案件,並在超出其技術能力時再轉交給我處理。
  • 調整軟體工作流程,讓開發者彼此審查程式碼,而非由我親自審查所有變更。

讓 TinyPilot 網站擺脫停滯

有兩位接案開發者負責 TinyPilot 產品本身的開發。他們表現非常出色,我也很幸運能相對快速地找到他們。

為銷售網站尋找開發者的過程則完全不同。自 2020 年 10 月以來,我已聘請六位不同的開發者來處理網站,卻沒有一位合適。其中一半的人可配合的時間過於有限,導致工作不穩定、溝通不良;另一半則是技能不符。我能及早辨識出這些開發者,但仍對每次都要花上一週時間與數百美元,才發現新開發者寫出的程式碼難以閱讀而感到沮喪。

網站設計向來只是暫時的占位方案,等我找到合適人選再來讓它更專業。在沒有穩定開發者的情況下,網站只能勉強維持與最初上線時相同的設計。對我而言,它看起來像個業餘專案,而我希望讓它看起來像個真正的產品。

TinyPilot 網站截圖

TinyPilot 網站設計原本只是暫時的占位方案,但一年後的今天仍維持原樣。

我在招聘網站開發職位時犯的最大錯誤,是將職務範圍限縮得太小。前六個月,我將其刊登為每週僅需三至五小時的接案工作。由於這只是一個簡單的銷售網站,我原本只想找人修復小錯誤並新增一些非緊急功能。但我認為將工時壓得這麼低,反而讓這份工作對多數接案開發者缺乏吸引力,吸引來的反而是行程已幾乎排滿的人。

此後我已將職務說明更新為每週 10 至 15 小時。此時待處理的問題已累積許久,有大量工作可做。而一旦找到合適人選,我會再聘請設計師重新設計網站,然後讓開發者花幾週時間轉換至新設計。若他們有工時空檔,也可以協助處理 TinyPilot 軟體本身的網站開發任務。

我在這個職位上的另一個招聘錯誤,是過度看重設計能力。維護網站需要處理許多繁瑣的工作,追查僅在特定螢幕尺寸或特定平台上才會出現的奇怪問題。確實有那種全方位的開發者,既能設計出令人驚豔的作品、寫出易於維護的程式碼,又能追查棘手的問題,但與其尋覓這樣的全才,不如先找一位優秀的開發者,之後再另請專業設計師一次性完成重新設計。

本週我開始試用一位頗有潛力的新人選,希望這次能順利。

讓硬體開發擺脫停滯

另一個讓我感到長期停滯不前的面向,是 TinyPilot 的硬體。在最初的幾個月裡,我快速迭代 TinyPilot 的實體設計。我在 26 天內打造出有史以來第一個客製化電子零組件,並同步設計了 3D 列印外殼。兩個月後,我推出了 Voyager,這對產品與公司整體而言都是巨大的進展。

自那之後,TinyPilot 的硬體或實體設計就沒有任何重大改進。我感覺自己已經原地打轉了七個月。

第一個因素是設計工作。我們初期在 TinyPilot 上所做的工程,以電機工程專案而言相對簡單。隨著專案推進,我投入更多前期設計與客戶研究,以驗證我們正在打造正確的產品。因此,儘管感覺這段時間沒有具體成果,我們撰寫的設計文件確實推進了專案。

根據我們的設計成果,我認為 TinyPilot 的下一步最佳方向是支援 Power over Ethernet。市面上已有現成的 PoE 轉接器可搭配 TinyPilot,但它們缺乏 TinyPilot 所需的電壓保護功能。一年前,打造客製化的 PoE HAT 僅需幾天的 PCB 設計工作、每個單位 4 美元的 PoE 零組件,以及最終 15 至 20 美元的 PCB 成本。

接著,全球晶片短缺來襲。原本隨處可得、每個 4 美元的 PoE 零組件在各地皆已售罄。幾週內,我將價格上限提高到每個 40 美元,接著又提高到 60 美元,電機工程師們仍一無所獲,儘管他們數月來每天都在檢查供應商庫存。

最後一個因素是,我合作的工程顧問公司規模很小。他們一直是很好的夥伴,但那是一家僅有兩人的兼職顧問公司。過去兩個月,他們的可用時間出乎意料地偏低,導致所有硬體開發完全停擺。

為了嘗試擺脫困境,我開始聯繫規模更大的電機工程公司。過去我也曾搜尋過,但很難找到符合我規模的公司。當我搜尋「electrical engineering consultant」時,找到的都是承接數百萬美元專案的公司,顯然與目前 TinyPilot 的規模不符。

偶然間,我發現了 Raspberry Pi 的核可設計夥伴名單,結果證明這是一個極佳的資源。名單上的供應商皆具備 Raspberry Pi 經驗,且服務對象涵蓋像我這樣規模的客戶。

Raspberry Pi 供應商夥伴網站截圖

Raspberry Pi 維護了一份專精於 Raspberry Pi 專案的電機工程設計公司名單

我聯繫了名單上三家位於美國的公司。在我聯繫的廠商中,廠商 A 從未回覆,廠商 B 在往返三週後婉拒了我的專案,廠商 C 則向我提交了一份提案。

我仍在猶豫是否接受廠商 C 的提案,因為他們似乎並未真正理解我的專案。當廠商 B 婉拒時,是在舉行多次內部會議後,認定他們沒有完成此專案所需的供應商人脈或專業能力。而廠商 C 則表示這兩方面都不會有問題,但這話是出自業務代表之口,而非工程師。

廠商 C 的提案極為含糊且充斥流行術語,以至於我無法理解他們究竟要提供什麼服務。我請他們修改提案,而新版提案並沒有好多少。他們將「TinyPilot」拼錯,出現數個明顯的文法錯誤,且毫無跡象顯示他們已閱讀我的規格文件。他們要求收取 5,000 美元,進行 35 小時的初步調查並準備一份概述我可行選項的簡報。

如果我原本的 EE 公司能取得所需零組件,他們大概只需 10 至 15 小時就能設計 PCB 並製造首批樣品。僅僅為了擬定計畫就花 35 小時,似乎過於冗長。

我詢問廠商 C,若他們的信心落空、未能找到能提供所需零組件的供應商,會如何處理。他們則愉快地回應,我仍需支付 5,000 美元。

將這一切寫出來後,我決定婉拒廠商 C,並與其他供應商重新開始流程。如果廠商 C 在提案階段就如此草率,我實在無法安心與他們綁定數個月、並投入超過 3 萬美元。

展開歐盟經銷

我與海外經銷商的關係一直有些奇怪。我每個月左右就會收到一封來信,有人詢問是否能合作讓他們在當地國家經銷 TinyPilot。我總是回覆:「當然,可以多說明一下你們希望如何合作嗎?」然後就再也沒有下文。我不知道原因何在。

因此,當我收到一位德國人士來信,提議在歐盟經銷 TinyPilot 時,我抱持懷疑態度。但與先前的人不同,當我詢問他的計畫時,他提出了務實的想法,並分享了他在這個領域的經驗。

他還想出一個聰明的方案來協商我們的利潤分配。由於先出價的一方會處於劣勢,他建議採取以下方式:

  1. 他先寫一份提案
  2. 他將提案加密並放入設有密碼的 zip 檔案中
  3. 他將加密的 zip 檔寄給我
  4. 我將我的提案寄給他
  5. 他再將 zip 檔的密碼寄給我,讓我能看到他在得知我的出價前所提出的方案

我們最終在談判桌的兩端提出了相反的立場。他最初的提案給我的利潤分成比我自己的初始提案還多 10%。因此,我們取中間值,雙方都覺得談成了不錯的交易。

我對這次合作感到興奮,因為它讓 TinyPilot 對歐盟的使用者更具吸引力。我目前雖然有出貨至歐盟,但由於運送速度、關稅,以及 TinyPilot 電源轉接器僅適用於美規插頭,使用體驗並不理想。與經銷商合作能解決這些問題,也意味著任何一方的行銷投入都能讓雙方共同受惠。

舊有專案

以下是我仍在維護、但非主要開發重心的專案之簡要更新:

Is It Keto

指標2021 年 5 月2021 年 6 月變化
不重複訪客49,08549,839+754 (+2%)
總瀏覽次數108,862122,700+13,838 (+13%)
Domain Rating (Ahrefs)11.013.0+2.0 (+18%)
AdSense 營收$466.84$536.85+$70.01 (+15%)
Amazon 聯盟營收$138.99$134.59-$4.40 (-3%)
總營收$605.83$671.44+$65.61 (+11%)

Is It Keto 在今年這麼晚的時間點仍能創造這麼多營收,讓我印象深刻。去年,它在一月的營收大幅躍升後,到四月時已暴跌 75%。也許那比我想像中更像是新冠疫情帶來的效應。今年,新年減肥熱潮消退後仍有明顯下滑,但該網站每月仍持續創造超過一月高峰 70% 的營收。

本月我對網站做了一些小幅調整,更新了已失效的 Amazon 聯盟連結。Amazon 上的商品時常上架與下架,因此我必須定期檢查連結,確保它們仍指向可購買的商品。除此之外,該網站持續在背景穩定運作,帶來被動收入。

Hit the Front Page of Hacker News

指標2021 年 5 月2021 年 6 月變化
不重複訪客191248+57 (+30%)
Gumroad 營收$417.85$123.52-$294.33 (-70%)
總營收$417.85$123.52-$294.33 (-70%)

Hit the Front Page of Hacker News 的銷售量正逐漸下滑。由於我上一份回顧文章確實登上了 Hacker News 首頁,訪客數有明顯躍升,但並未轉化為太多客戶。

Zestful

指標2021 年 5 月2021 年 6 月變化
不重複訪客659594-65 (-10%)
總瀏覽次數1,7841,470-314 (-18%)
RapidAPI 營收$32.85$40.20+$7.35 (+22%)
總營收$32.85$40.20+$7.35 (+22%)

Zestful 持續處於維護模式。這方面沒有新消息。

總結

完成了哪些事?

  • 預售了首個 TinyPilot Enterprise 訂閱
    • 一家大型企業的客戶要求為 TinyPilot 提供 REST API。我詢問他們是否願意為包含此功能的版本支付月費,他們欣然同意。
    • 我希望透過針對大型企業情境的功能,吸引更多 Enterprise 客戶。
  • 發布了新版 TinyPilot
  • 培訓了一位新的在地員工負責 TinyPilot 的出貨流程
  • 打造了 TinyPilot Cloud 的概念驗證,這是一款可讓你透過網際網路存取 TinyPilot 的網頁應用程式
    • 後續發展仍未定。我正與一家考慮提供全天候營運支援的雲端供應商洽談,但仍有許多未知數。

經驗教訓

  • 如果在招聘上遇到困難,就重新調整職務。
    • 我之所以找不到 TinyPilot 網站的開發者,是因為我提供的工時太少、卻要求過多技能。自從增加工時並縮小職務要求後,情況已有所改善。
  • 當一項任務無法外包時,試著找出其中可外包的子任務。
    • 我一直獨自處理行銷與客戶支援,因為它們需要跨事業領域的知識與技能,但我可以將其中一些前置作業外包。

下個月的目標

  • 讓我的歐盟夥伴在八月底前準備好開始銷售。
  • 制定流程,讓 TinyPilot 的在地員工能在所有任務上互相分擔與輪替。
  • 為 TinyPilot 銷售網站找到一位設計師。
  • 找到一家能為 TinyPilot Voyager 打造 PoE 轉接器的電機工程公司。

原文由 Michael Lynch 發布

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