五年前,我 38 岁,开始编写智能合约,从没有专业编程经验到构建尖端智能合约。
许多人询问他们如何走类似的道路。虽然没有特定的资源或成功秘诀,但您也可以使用一种模式。
这是我的旅程。
2018 年,我最近与妻子和年幼的孩子从墨尔本搬到了里斯本,这样我们就可以离家人更近了。作为一名超级计算工程师和投资银行解决方案架构师,我的职业生涯很不错,我认为里斯本足够大,足以让我找到工作。
很快,我发现里斯本的就业市场完全不需要超级计算工程师,而我的解决方案架构师背景只会让我担任无聊的中层经理角色。
我很早以前就对区块链技术感兴趣,但从未真正投入其中。然后我读了一篇关于雇用区块链工程师有多难的文章,并看到了机会。
我写信给作者,感谢他给我在区块链领域找工作的启发。我们聊了聊,和他的一个朋友一起决定创办 TechHQ,一家有远大理想的区块链咨询公司。在我们的三人咨询公司中,我将是技术专家。
我大约有一个月的时间从企业解决方案架构师过渡到创建可以出售给客户的基于区块链的项目。
如果没有任何经验,我将成为技术专家。
我的任务之一是撰写区块链技术文章来吸引客户,就像那篇让我认识合作伙伴的文章一样。撰写这些文章并公开我所学到的知识将是我职业生涯的关键。
我的第一篇文章是关于
几个月后,我们的第一个商业机会出现了,项目是
即使按照 2018 年的标准,结果也不尽如人意——设计过度且效率低下
在获得了一些 Solidity 编码能力并且只有 Bernardo 擅长前端开发后,我接管了 CementDAO 的智能合约。不幸的是,部分由于 Fixidity 的实施效率低下,我们从未进入主网阶段。
当我们寻找更多客户时,我继续进行实验,以便我可以写更多文章,因为这就是我们期望获得客户的方式。最终,我想出了一个有趣的想法
就在破产即将来临的时候,这段代码为我们赢得了另一个客户:
尽管智能合约的性能很糟糕,但他们只需要我们交付的 Ganache 的概念验证。我学到了关于智能合约架构的重要教训,
尽管表现糟糕……我学到了重要的教训
我们再次没有收入,而且现金也非常短缺。我决定放弃我的薪水并购买公司三分之一的股份,这样我们就不会破产。我不认为我们有很大的机会成为一家公司,但这并不重要,我在编码,我在学习,我在享受乐趣。获得良好的区块链体验似乎是一笔便宜的交易。
当我们寻找更多客户时。我合作过
最终,公司又没钱了,我们都不得不开始找工作。然后,我偶然发现了一个
经过讨论后
受到这一成功的鼓舞,我解决了 OpenZeppelin 修改其访问控制合约的挑战。我对失败的供应链应用程序的主题做了前沿工作,并通过 AllianceBlock 对其进行了完善,然后再次
我知道我能做到。这最终导致了出版
我成功了。我的一些代码终于上线了。 OpenZeppelin 也同样如此。
我仍然需要一份工作,于是我成为了 BeyondSkills 的区块链讲师。我必须创建在线课程来教授 Solidity 编程。和往常一样,我不太适合这份工作。我知道如何编写一些代码,但我的知识存在巨大差距。在那之前,我自己还没有部署过合约。
我必须通过视频进行讨论并制作有关 Solidity 开发的教程。我还必须彻底,因为课程需要保持一致。与此处应用的文章相同的模式;我在学习东西并立即教授它们,这让我学到了很多关于 Solidity 开发的知识。
不幸的是,该公司因法律挑战而关闭,并且该内容从未公开。也许这样更好。
我正在学习一些东西并立即教授它们,这让我学到了很多关于 Solidity 开发的知识。
在录制这些课程时,我遇到了
那时,我已经编写了 Fixidity 代码,发表了几篇有关定点数学的文章,并试图帮助 OpenZeppelin 和 Solidity 核心团队,但没有成功。我还知道具有对数函数的 AMM 并不是微不足道的,并且知道一位 Mikhail 的家伙,我们可以通过合同让它们发挥作用。
我是@yield 的第一位员工。我说服艾伦雇用
我学到了很多——关于
我们了解到的一件事是,与 Uniswap 不同,我们需要对协议进行更改,以寻找产品市场契合度。由于我们的合约大多是不可变的,因此我们很快就开始了 Yield v2 的工作。
Yield Protocol v2 上线了大约两年,我从中学到了很多东西,但现在它即将关闭。虽然我们的技术工作是一流的,但固定利率目前还没有适合去中心化金融的产品市场。
再次在野外,我再次选择了困难的道路,我没有再担任首席工程师/首席技术官的角色,而是将自己设置为其他初创公司的顾问,这些初创公司可能会从我学到的经验教训中受益。没有关于如何做到这一点的手册,我知道我的知识差距很大,但改进的机会也很大。
现在,您应该看到该模式。我总是在自己的舒适区之外,经常失败,但总是把我学到的东西教给别人。这篇文章可以被视为一个例子。
如果幸运的话,我会找到有人想要的东西,比如 CementDAO、AllianceBlock、OpenZeppelin 合约、BeyondSkills 课程,最后是 Yield。如果我找不到有需要的人,总有一些东西可以学习然后写下来,就像我所有的文章一样。
我总是在自己的舒适区之外,经常失败,但总是把我学到的东西教给别人。
尝试、失败、学习和教学循环不是我的发明,但它确实有效。这常常让我看起来像个白痴,也许这对某些人来说是最难的。我自己,我对自己的失败感到自豪。
谢谢阅读。我希望这能给你一些启发。祝你好运。