当前位置: 首页 > 科技观察

如何领导区块链工程团队

时间:2023-03-14 20:44:46 科技观察

SantiagoPalladino是OpenZeppelin的团队负责人,OpenZeppelin是一家总部位于布宜诺斯艾利斯的公司,为区块链创建开发工具并审核区块链应用程序的安全性。他与我们分享了他克服领导与分布式区块链开发团队合作的团队所面临的独特挑战的方法。以下是Santiago采访的三个要点,概述了他为构建和维护大型复杂产品的有效开发团队所做的工作:开发区块链具有挑战性,因为方法不同,而且一切都在不断变化。创建区块链应用程序的要求不同于Web或移动应用程序。它也在不断发展,安全性至关重要,应用程序的使用方式也是全新的。使用区块链,您永远不会停止招募新的团队成员。由于一切都在不断变化,因此您必须不断学习和适应。如果新成员潜心练习,几个月后他们就会变得富有成效。在挑选新的团队成员时,以往的经验不如寻找对挑战充满热情和动力的人重要。他们的面试过程着重于寻找能够有效沟通并且对这样一个充满活力的新空间感到兴奋的人。在全球团队中建立有效的联系始于面对面地了解人们。他们总是有新的团队成员在总办公室工作,他们全年都会举行务虚会,这样每个人都有机会面对面交流。这使得通过书面或虚拟通信进行连接变得更加容易。软件开发的一个新领域是区块链,它是一种创建去中心化分布式账本的方法。圣地亚哥从未想过他会成为使用这项激动人心的新技术的领先工程师团队。这是偶然发生的,因为他慢慢开始更多地计划和指导其他开发人员。现在,他管理着一个由20名工程师组成的团队,这些工程师分布在世界各地,他们致力于开发工具来帮助其他人创建实用的区块链应用程序。Santiago分享了他在高度动态的软件开发世界中建立和领导分布式团队的经验。DevelopingforBlockchainSantiago是第一个承认区块链受到很多负面宣传的人,其中一些是它自己赚来的。然而,他指出,“区块链的主要吸引力在于它是一种全新的建筑范式。”他发现这个领域具有挑战性,因为它太新了,而且人们开发应用程序的方式是独一无二的,支持程序的工具也在不断变化。“区块链需要改变它的编码方式和构建方式。”即使面临这些挑战,圣地亚哥仍认为这是一个千载难逢的机会,可以成为改变世界的令人兴奋的新事物的一部分。他认为它使人们能够控制自己的合同和金融交易。他观察到,将区块链用于智能合约是基于该技术的积极应用的一个很好的例子。区块链开发的独特性使招聘成为一项挑战。Santiago的职业生涯始于使用Java编写Web应用程序;事情既定又稳定。得益于区块链,尤其是其主导平台以太坊,事情正在快速发展。方法、工具和算法在不断变化和发展。这就是OpenZeppelin雇用来自不同背景的各种人的原因。他们“寻找充满激情的人,他们想要学习并受到挑战的激励。他们追赶的速度之快令人难以置信。”Santiago分享说,OpenZeppelin的招聘流程是从筛选面试开始的,然后是与团队领导的讨论。然后,他们做一些不同的事情;他们有前景在付费测试项目上工作,OpenZeppelin的工程师担任教练。“这个想法是申请人通过这个项目的设计和开发与他的教练进行了沟通。教练可以帮助解决技术问题并帮助确定优先级,最重要的是,评估沟通。”他们想“带来你的兴趣和满足你需要的动力。了解与这些人一起工作的感觉对你有好处,让我们知道你是如何工作的,你是如何建设的,你如何确定优先次序,你如何处理挫折。”这有助于OpenZeppelin团队找到可以作为团队不可或缺的一部分工作的合适人选。入职区块链当被问及入职开发人员需要多长时间时,圣地亚哥说:“我大约两年半前加入公司,现在我还在入职。当然。老实说,我不认为你会在这里完成入职流程。为了让人们快速上手,他首先将他的新团队成员指向在线资源,并让他们尽快参与到该项目中。“我们要求他们做一些更实际的事情。假装你是用户,尽可能多地动手,通过练习,你最终会学到东西。”除了为区块链开发者编写工具,OpenZeppelin还提供安全审计服务。该领域的新员工专注于理论和安全以及学习区块链编程。两种类型的员工都与经验丰富的工程师一起工作,他们会仔细检查他们所做的一切。圣地亚哥本人试图通过撰写自己关于该主题的书《面向Web开发人员的以太坊:学习在以太坊区块链之上构建Web应用程序》来填补这一空白。安全培训在整个采访中都提到了安全性,因为区块链应用程序的一个基本功能是提供一种安全和去中心化的方式来记录交易。这就是为什么圣地亚哥强调通过严格的审查程序营造安全文化至关重要。“最大的培训来自于这样做,并对我们构建的一切进行非常彻底的审查。”为了创建安全的应用程序或有效地审计其他人的应用程序,他觉得“首先是操作安全。你必须先确保Makeyourselfsafebeforeyoucanmakewhatyoubuildsafe.That'sthefirstthingyoucandotogetpeople以正确的心态。”建立有效的分布式团队圣地亚哥还花了一些时间讨论他认为作为领导者面临的最大挑战;管理全球开发团队。尽管OpenZeppelin在阿根廷布宜诺斯艾利斯设有办事处,但其大约一半的工程师居住在不同的国家他们开始通过雇佣有远程工作经验的人来解决这个问题。这些员工带来的技能和方法帮助OpenZeppelin创建了一个高效的分布式团队。“关键是雇佣有远程工作经验的远程人员。”其中一位解决方案是用书面形式记录所有事情。Santiago认为分散会阻止每个人听到正在讨论的内容。所以他们把事情写下来;每个人都可以在他们的时区工作时查看它。OpenZeppelin采取的另一种方法是每周保持同步通过Internet开会。每个人都分享他们正在做的事情以及他们个人生活中发生的事情。他们是还强调面对面的会议。当新工程师加入团队时,他们会在布宜诺斯艾利斯办公室待上两到三周。然后每年两次,团队会在世界某个地方聚会。圣地亚哥发现,在现实世界中会面“有助于建立归属感,并在镜头外建立个人联系。当你面对面认识某人时,虚拟交流会容易得多。”对于开发人员CreateSoftware访谈最后讨论了为开发人员创建应用程序。作为一个小组织,他们没有特定的产品经理。相反,他们作为一个团队工作来改进他们创建的软件。圣地亚哥将规划描述为“团队制定计划并由首席执行官和研究负责人决定的协作过程”。“通过审核一个项目,我们可以独特地了解建造它的人经历了什么。”由于OpenZeppelin还对其客户创建的最终用途产品进行安全审计,他认为他们的优势在于能够亲眼看到人们如何部署他们的工具。审核员向开发团队报告哪些有效,哪些无效,以及客户需要为自己构建的内容。他们可以添加缺失的功能并修复现场发现的问题。