我辞掉在谷歌的工作,创办自己的软件公司已经3年了。这是我迄今为止收入最高的一年,年收入6.3万美元,比2019年增长了7倍。
这一年,一切顺利
在我自己工作的头两年里,我的总收入不足1万美元(约人民币6.5万元,平均年入3万元),第3年我的目标是赚取2万美金的收入。
这一年过了一半,看起来我的目标要落空了。我的业务每个月总共能挣300美元,而我的新点子没一个管用。
5月的一款新产品奇迹般地扭转了局面。截至去年年底,我获得了6.3万美元的收入,远远超过了我的目标。
嗯,我的净收入还是个负数,不过这次我有个好的理由!
目前,我在销售实物产品,因此,我的收入比支出滞后两三个月。每笔销售的利润都在30%~50%,所以最终数据将会跟上。
按项目介绍
TinyPilot
TinyPilot是我为了远程管理服务器而开发的一个廉价设备。
在过去的几年里,我的所有软件开发都是在家庭服务器上完成的。它工作得很好,除非我搞砸了网络配置或者想要安装一个新的操作系统。我的服务器没有连接显示器或键盘,所以我必须把它放到我的办公桌上,用工作站的所有线缆都插到服务器,等我做完了再把它们换回来。
我了解到树莓派(RaspberryPi)可以伪装成USB键盘,而且我也了解它可以捕捉视频。要是一款Web应用将这两种功能结合在一起,将树莓派转变为微型远程管理设备,结果会怎样?
经过几个月的修修补补,我有了一个工作原型。
我制作的TinyPilot的原型,通过IP设备的开源KVM。
于是我就此发表了一篇博文:《TinyPilot:以不到一百美元构建一个通过IP设备的KVM》(TinyPilot:BuildaKVMOverIPforUnder$100)。
很快,我意识到这个生意和我以前做过的任何生意都不一样。这篇博文发表后不到4个小时,客户们就从我的存货里买下了全部9个套件,而且他们还继续购买,即使是延迟交货。
TinyPilot在HackerNews和Reddit上的回应。
在最初的那个高峰之后,销售额有所下滑,但TinyPilot自那以后一直保持增长。在销售实体产品方面,我并没有任何经验,所以我很快就学会了如何管理库存,如何系统地执行订单,如何与供应商合作制作电路板和3D打印外壳。
TinyPilot以近5.4万美元的收入结束了这一年。我的净收入仍然是负数,但这是因为我的成本是前期的。TinyPilot在2020年的支出包括持续到2021年2月的库存。
*:绝大多数代码都是我写的,但我雇了一个开发人员来帮助我打理销售页面。
登上HackerNews头版
登上HackerNews头版的是我博客写作的课程。
在这一年里,我看到越来越多的开发人员在付费课程上教他们所知道的东西。TinyPilot向我展示了将我的博客与我的业务联系在一起有多强大。如果人们喜欢我的博客,他们也许会有兴趣购买一门我的写作课程。
录制课程比我想象的要难。我本来打算工作30~40个小时,但后来变成了将近200个小时。
该课程在2021年1月推出,所以下面的数字不包括推出后的订单。迄今为止,销售情况并不好,但是要知道长期的收益还为时尚早。不管怎样,我为这本教材而骄傲,我的一些学生告诉我,这些课程对他们的写作有很大的帮助。
mtlynch.io(博客)
我在2020年底,从这个博客上删除了所有合作伙伴关系。
失败的项目
在过去一年中,我学到的最重要经验之一就是,追求正确的想法意味着拒绝错误的想法。6~8周后,如果一项业务无法带来有意义的收入,我就会转向其他客户,或者转向一个全新的项目。
IsItKeto
IsItKeto告诉读者哪些食物适合酮基饮食(ketodiet)。
从2018年起,我开始开发IsItKeto网站。这是一个简单的网站,告诉你某些食物是否适合酮基饮食。
2019年我放弃了这个网站,但在我的一些新的商业想法失败之后,在2020年4月又重新开始。IsItKeto网站虽然盈利,但几乎可以说是微乎其微。每名访客带来少于0.01美元的收入,因此需要大量增加访客和/或收入。
另一个想法来自我的朋友JustinVincent,他听说我的网站每月70000~100000的页面浏览量,收入却如此之少,这让他很震惊。他建议我创建一种付费的姊妹产品,用IsItKeto来吸引合格的潜在客户。
*我在2020年1月放弃了膳食计划。
WanderJest
WanderJest帮助喜剧迷找到附近的现场喜剧表演。
WanderJest是我在2020年初开始的一个“短命”项目。我把它描述为“一种类似Bandsintown的应用,但它是用来寻找喜剧”。(译注:Bandsintown是一款获奖的Android音乐会信息和现场音乐会发现应用。)
我计划通过和电影院的联盟交易来赚钱,但是没人用我的折扣码。后来新冠疫情一爆发,我就关闭了网站。
PortfolioRebalancer
PortfolioRebalancer(投资组合再平衡应用)帮助被动型投资者管理他们的投资。
我的投资组合是不同类别的股票和债券的组合,每种资产类型都有一个目标比例。随着价格的波动,我的投资余额也会发生变化,所以我必须不断调仓,才能回到我的目标比例。每一年,我都会这样重复几次,单调乏味地把数字输入电子表格,直到一切看起来都正确为止。
经验教训
产品与市场契合是魔术
寻找“产品与市场契合”(product/marketfit,PMF)意味着要创造一款产品,并与足够多的客户建立联系,从而让你的业务充满活力。当创始人谈到实现产品与市场契合时,他们以一种同样令人窒息的语调描述寻找真爱。我现在知道为什么了。
在我独自工作的头两年半里,我会花几百个小时来执行一个想法,却只看到几美元的额外收入。初看起来,TinyPilot就是产品与市场契合,我一发表博文就知道了。
对于TinyPilot,我感觉是产品推动了业务,而我则顺其自然。有几个月,我在管理业务时犯了严重的错误,但是它一直在发展。
当我对产品进行改进时,效果是立竿见影的,而且是实质性的。11月,我发布了一款高端型号的新TinyPilot。第1个月就卖出了55台,创造了1.4万美元的额外收入。比起我在IsItKeto和PortfolioRebalancer上0.1%的注册率来说,这是个不错的成绩。
成功的业务创建无需全天候
我还清楚地记得2017年底在UCB喜剧剧场看的一场演出,但我却不记得演出中的任何笑话。我只记得全程都在担心口袋里的寻呼机会随时响起,迫使我赶紧回家。
我在谷歌的团队有一个“随叫随到”的轮值制度,也就是说,每2个月,你去哪都要带着一个寻呼机,持续两周。如果寻呼机响了,你必须在30分钟内做到“手指放在键盘上”。
离开谷歌后,我对自己未来的计划没有把握,但有一点可以肯定,那就是:我不再使用寻呼机了。而我也没有——我不认为停机会造成什么大问题。
幸运的是,JasonCohen,这位非凡的引导型创始人告诉我,继续做我现在正在做的事。好吧,他并没有确切地告诉我,但感觉他是直接对我说的。Cohen在他长达32分钟的精彩演讲《设计理想的引导型企业》(DesigningtheIdealBootstrappedBusiness)中,强烈反对创始人创建“实时”业务。他解释说,如果你是一家自筹资金的小企业,不值得让客户半夜把你叫醒。
我很高兴自己没有向恐惧屈服。TinyPilot离“实时”已经很远了。客户在他们自己的硬件上运行我的软件,这样我就可以关闭每台服务器和代码库而不会影响到任何人的工作流程。
成功比失败更有压力
虽然TinyPilot并不要求持续可用性,但我却常常忘记它。
自从我大张旗鼓地发布之后,有两天我都无法入睡。我把所有9套设备都寄给了我的客户,然后苦恼于接下来会发生什么。假如所有人都收到他们的设备,却没有一个可以使用呢?假如我的客户想让TinyPilot做些完全不同的事情呢?要是每个人的服务器都出了什么问题怎么办?
我打包的最初9份TinyPilot订单
幸运的是,最初的客户都很喜欢他们的TinyPilots,所以我终于如释重负。但是每隔几周,就会有新的事情发生,这让我担心了好几天。比如,邮局丢失了一批关键部件;一个积极的评价促使订单激增,耗尽了我的库存;我弄错了一份海关表格,担心自己会在出口监狱坐牢,并为此做好了准备。
为了减轻压力,把工作和个人生活分开,我做得越来越好,但这是个持续的过程。
给去年的目标打分
去年年初,我制定了3个高级别目标。
1.在我的各项业务中赚取2万美元的收入
一开始看起来很黯淡,但我远远超过了我的目标。我觉得这是一个很大的成就,因为我在2019年的收入只有7200美元,增长了近7倍。
2.发表10篇博文
3.学习一项新技术
本想找个借口学习Rust,但一直找不到合适的对象。
相反,我在JavaScript方面获得了广度和深度。我已经知道Vue,但今年,我学会了Gridsome,一个基于Vue的静态网站生成器。我用它建立了我的TinyPilot销售网站,并重写了IsItKeto网站。
我还学会了如何更有效地使用纯JavaScript。TinyPilot的Web应用是用纯JavaScript写的,没有构建或编译的步骤。令人吃惊的是,避免使用现代JavaScript框架可以节省大量的复杂性。
第4年目标
将TinyPilot的年收入增长到60万美元
嗯,尽管听起来有些疯狂,从2万/年的目标变成60万/年,但我认为这是可以实现的。
TinyPilot在2021年1月赚了4.3万美金,因此,按每月平均3%的增长率计算,它一年可以赚到60万美元。
发表6篇博文,出版一本书
自从我开始为自己工作之后,我就一直幻想着自己能出版一本书。今年,我终于做到了。
这本书将教给软件工程师一些提高写作水平的实用方法。暂定书名为《重构英语:软件开发者的有效写作》(RefactoringEnglish:EffectiveWritingforSoftwareDevelopers)。
TinyPilot自动化管理
在TinyPilot,我的女朋友和我一起兼职,负责库存管理和包装订单。我们喜欢在一起工作,但这是一个非常脆弱的系统,规模非常小。假如我们中的一个有几天没空,很快就会有大量的积压。
我想把我们的流程系统化并外包出去,这样我们就可以放两个星期的假,而不至于一切都停滞不前。
结束语
在我辞职之前,我不断地看书,听关于初创公司的播客节目,最让我感兴趣的部分是无限的可能性。
在我的整个职业生涯中,总是处于一种预定的职业阶梯上。要取得进展,我必须证明自己达到了与日常工作只有一点点相似的任意标准。如果经理让我增加一个新功能,我就不能说:“不,我认为我们需要一个更好的营销策略,所以我要去做这件事。”但对于我自己的业务,我经常说这样的话。(不过目前,经理和员工都是我自己。)
当我终于看到我的一项业务取得了财务上的成功,而且有了更多的收入,这就意味着更多的可能性,就像我希望的一样好玩。尽管压力很大,但很有趣。
我再一次感到无比的幸运,能够为自己工作,我希望永远做下去。
作者介绍:
MichaelLynch,独立开发者。单元测试爱好者。TinyPilotKVM开发者。曾在谷歌、微软工作。