TinyPilot:第34个月
一句话总结
走出“紧急模式”
新来的读者?
大家好,我是 Michael(迈克尔)。我是一名软件开发者,也是 TinyPilot 的创始人,这是一家独立的计算机硬件公司。我于2020年创立了这家公司,目前月收入为6万至8万美元,雇有另外七名员工。
每个月,我都会发布一篇这样的复盘,分享我的业务以及整体职业生活的进展情况。
亮点
- 我们已完成将 TinyPilot 的订单履行业务移交给第三方供应商。
- 本地团队正在摆脱持续数月的“紧急模式”。
- 既然生产速度不再是瓶颈,我可以选择一个以盈利最大化为目标的价格。
目标评分
每个月初,我都会宣布自己想要完成的目标。以下是我对这些目标的完成情况:
将所有产品过渡到我们的 3PL 供应商
- 结果:我们的 3PL 供应商现在负责发运我们的所有产品。
- 评分:A
过渡进行得很顺利,这是公司向前迈出的一大步。有了 3PL 处理日常订单履行,我们的灵活性大大提高,因为不必每周六天都安排人员到办公室上班。员工仍然会定期去办公室,但不再有必须在当天邮件收件截止前把所有事情做完的压力。
选定一家合同制造商接手 TinyPilot 的设备组装,并开始过渡流程
- 结果:我仍在洽谈中,尚未正式选定。
- 评分:B-
我找到了一家我喜欢的合同制造商,但还没有正式与他们签约。我在等待正式的报价和时间表。他们乐观的非正式估计是,首批产品将于2023年10月投产。
发布 TinyPilot Pro 的新版本
- 结果:发布了 TinyPilot Pro 2.5.4
- 评分:A
就功能而言,这并不是一个令人兴奋的版本,但它为用户提供了一条迁移出 Debian Buster 的路径,因为该系统现在已是遗留操作系统。停止对 Buster 的支持意味着可以消除我们代码库中的大量复杂逻辑——我们曾针对该操作系统版本编写了许多条件判断。
TinyPilot 数据统计
| 指标 | 2023年3月 | 2023年4月 | 变化 |
|---|---|---|---|
| 独立访客 | 7,443 | 6,560 | -883(-12%) |
| 总页面浏览量 | 17,904 | 15,034 | -2,870(-16%) |
| 销售收入 | $83,529.40 | $82,060.84 | -$1,468.56(-2%) |
| 企业订阅收入 | $290.70 | $290.70 | 0 |
| 特许权使用费 | $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 的本地团队几乎一直处于满负荷运转状态,所以我的首要任务是想办法减轻他们的负担。
在我看来,性价比最高的减负措施之一就是完成向第三方物流供应商的过渡。自 TinyPilot 创立以来,我们一直直接从办公室发货。使用 3PL 后,我们将产品批量运送到仓库,然后由 3PL 处理客户订单到来后的日常履行工作。
把履行业务外包给 3PL 肯定能为我们省下大量工作,但这却是一个两难困境,因为切换本身就需要额外的工作。
一旦我们把产品运送到 3PL,大约需要一周时间 3PL 才能准备好处理订单。这意味着我们必须多储备一周的库存——在我们勉强应付现有订单量的情况下,这可不是一件小事。
我本可以停业一周来完成过渡,但那相当于放弃1万至2万美元的销售收入。相反,我采取了几项措施来减轻本地团队的负担,让他们能够把精力集中到储备库存上。
首先,我削减了广告支出。这是显而易见的做法。当我们已经供不应求时,花钱吸引新客户毫无意义。
其次,我提高了价格。我分几轮上调了 TinyPilot 的价格,以减缓销售量,同时尽量减少收入损失。
最后,我亲自参与客户支持。本地员工要负责组装、履行和客户支持。我每在支持上为他们省下一个小时,他们就能多花一个小时来组装设备。
幸运的是,这些努力成功了。五月初,本地团队积累了足够的库存盈余,可以向 3PL 发运一周的库存。3PL 开始运转后,本地团队的工作量下降了大约15%。
向 3PL 的过渡进行得相当顺利,但如果重来一次,肯定有些地方我会计划得更好。我整理了一套向 3PL 供应商提问的问题清单,供首次接触 3PL 的人参考(或者供我自己将来更换供应商时使用)。
走出“紧急模式”
即使把履行业务外包给 3PL 之后,我们也没能像我希望的那样松一口气。由于仓库里只有几天的库存,团队仍在拼命赶工组装新设备,以补充 3PL 的库存。
我不无怀念地想起一年前本地团队还有多少富余产能。那时候,我最大的问题反而是错过了机会,没能让他们承担更多责任。
今年,情况完全反转了。我在承担本应由本地团队完成的任务。而且总有一种感觉:我们是在苦苦追赶工作量,而不是从容地处理它。我们忽略了文档编写、库存规划等长期任务。
最糟糕的是,我无法为销售旺盛的日子感到兴奋。当我在 Shopify 上看到我们一天卖出10多台时,我的第一反应不是庆祝,而是“糟糕!这会让我们更难在仓库里积累库存。”
我觉得,当仓库里有一个月的库存时,我们就能松口气了。我做了些简单的电子表格计算,估计要到七月才能达到这个水平,但我不想让大家再带着这种心态熬两个月。

据我估计,我们要到七月才能在 3PL 积累起健康的库存。
过去几个月,我一直考虑雇用第三名本地员工。我犹豫不决,因为我预计一旦把履行交给 3PL,工作量就会下降,而一旦把生产交给合同制造商,工作量更会大幅下降。到那时,本地团队的工作就只剩客户支持,而我预计三个人的支持工作量不会饱和。
当我发现 3PL 过渡之后工作量仍然很大时,我又重新考虑起第三名员工的想法。然后我灵光一闪:如果六个月后没有足够的工作,我可以直接把它定位为一个短期职位。
我在 craigslist 和本地 Facebook 群组上发布了招聘信息。两周内,我收到了18份申请,面试了五个人,发出了一个录用通知,对方也接受了。新员工本周入职。
自从决定招入第三名员工以来,团队的氛围明显变了。大家不再有短期赶工的压力。每个人都更放松了,我们又重新投入文档编写和长期规划。
什么价格能实现利润最大化?
过去两个月,我一直在提高 TinyPilot 的价格以减少销售量。我故意把 TinyPilot 的价格定得很高,以减少总销量,从而有更多时间补充库存。
现在我们已经缓过劲来,有了额外的产能来组装设备,我可以把价格定在利润最大化的水平,而不是围绕生产速度瓶颈来定价。
上个月我已经做过定价实验,现在有了更多数据,让我们看看数字说明了什么。
Voyager 2a USB-C
| 价格 | 时间段 | 天数 | 每日销量 | 每日收入 | 每日利润 |
|---|---|---|---|---|---|
| $379 | 2月13日 - 3月6日 | 22 | 5.0 | $1,895 | $1,220 |
| $399 | 3月7日 - 3月12日 | 6 | 5.7 | $2,261 | $1,496 |
| $429 | 3月13日 - 4月10日 | 29 | 4.6 | $1,953 | $1,338 |
| $499 | 4月11日 - 5月3日 | 23 | 3.3 | $1,671 | $1,219 |
上个月,我对 TinyPilot 需求的低弹性感到惊讶。我原以为提价后销量会下降得更多。有了更多数据后,需求曲线更接近我的预期了。提价120美元(32%)导致订单减少34%。
有趣的是,在379美元和499美元这两个价位上,利润几乎完全相等(每日1,220美元对1,219美元)。总体而言,499美元价位的利润会更高,因为销量减少34%意味着更低的长期支持成本。
Voyager 2a PoE
| 价格 | 时间段 | 天数 | 每日销量 | 每日收入 | 每日利润 |
|---|---|---|---|---|---|
| $478 | 2月13日 - 3月6日 | 22 | 1.3 | $630 | $426 |
| $498 | 3月7日 - 3月12日 | 6 | 2.5 | $1,245 | $858 |
| $528 | 3月13日 - 3月19日 | 7 | 1.3 | $679 | $480 |
| $558 | 3月20日 - 4月10日 | 22 | 1.1 | $609 | $440 |
| $638 | 4月11日 - 5月3日 | 23 | 0.9 | $583 | $441 |
高端 PoE 版本的客户似乎对478美元到528美元之间的价格不敏感。无论哪个价位,他们的购买率大致相同,不过样本量较小。
利润最高的价格是498美元,但考虑到采集周期很短,这很可能是个异常值。
决定:以 $399 + $99 出售
定价的最佳平衡点似乎是基础型号售价399美元,PoE 升级加收99美元(合计498美元)。TinyPilot 在这些价格下实现了最高的销售利润。虽然该时间段的样本量较小,但它似乎也处于其他价格所暗示的曲线顶部附近。
我喜欢399美元基础价格的另一个原因是,对于像我这样的人来说,这个价格仍然在可接受范围内可以买得起。如果三年前我看到 TinyPilot 这样的产品,我会想:“当然,399美元的话,对我的 homelab 来说是值得的。”
业余项目
ScreenJournal
我继续开发 ScreenJournal,这是一个开源 Web 应用,可以让你与朋友分享电影推荐。
我在四月添加的主要功能是让用户能够评论其他人的影评。我没有使用任何现成的评论组件包,所以实现完全是自研的。效果如下:
我在四月为 ScreenJournal 添加的评论功能演示
我对 ScreenJournal 做的另一项大改动是重新设计了端到端测试,使其能够并行运行而不是串行运行。
在对 Web 应用进行端到端测试时,我一直为共享数据库的问题所困扰。我一直没能弄清楚其他开发者是如何解决这个问题的。
以前,我通过在每次端到端测试前重置数据库来应对共享状态的问题。这很慢,而且由于所有测试共享同一个数据库,我一次只能运行一个测试。
我目前的解决方案是为每个客户端分配一个 cookie,并将该 cookie 与一个唯一的内存中 SQLite 数据库关联。这样,测试就不再通过数据库共享状态,因此可以并行运行。比起我以前用过的任何方案,我更喜欢这个方案,但我仍然觉得自己在重复造轮子,很好奇读者是否知道更成熟的解决方案。
总结
完成了什么?
- 完成了向 3PL 仓库供应商的过渡。
- 发布了 TinyPilot Pro 2.5.4。
- 参加了 Microconf US 2023。
- 为 TinyPilot 办公室雇用了一名新员工。
- 为2022年纳税处理了Section 174 的麻烦。
经验教训
- 有很多潜在员工并不介意短期职位。
- 我之前一直避免雇用第三个人,因为我担心当这个岗位的需求消退时该怎么办。我意识到我可以从一开始就把它定位为短期职位,而且有很多候选人愿意接受、甚至更青睐短期岗位。
下个月的目标
- 让最新的 TinyPilot 员工完成入职。
- 实现9万美元的收入。
- 找到三位有兴趣评测 TinyPilot Voyager 2a 的 homelab 博主或 YouTuber。
随机一篇博客

