发布于 2026-01-06 6 阅读
0

开发者布道师到底是什么?我的故事……长话短说……什么是开发者布道师?优秀的开发者布道师需要具备哪些素质?

开发者布道师到底是什么?

我的故事……

长话短说……

什么是开发者布道师?

优秀的开发者布道师需要具备哪些素质?

TL;DR:开发者布道师是开发者的好朋友!

过去三年来,我一直投入大量的工作时间和个人时间,帮助其他开发者更高效地使用他们喜爱的工具。这些工具包括 Web 平台(例如 JavaScript、PWA 和 Angular)、Google Cloud Platform、Google Actions 以及各种聊天机器人。我担任的是开发者布道师的角色。

这篇博文基于我作为开发者布道师的个人经验。其中包含我个人学到的东西,以及我从其他公司的其他开发者布道师那里学到的东西。

我的故事……

十三年前,我还在大学学习电子学和计算机科学的时候,我们学习了所有关于计算机和编程范式、数据结构、设计模式、编译器和语言等​​等的理论知识。基本上,我们学习了初级软件工程师开始职业生涯所需的一切知识。

然而,我当时可能对Java投入了太多热情,因为我总是完成比课堂作业要求更多的任务。我的意思是,在大学里学习Java还不错,但我开始感到厌倦。我把大部分空闲时间都花在了学习新的编程范式上,比如Python、PHP、8086汇编、oCaml和JavaScript。正是在那时,我发现了JavaScript,并深深地爱上了它。从那时起,我就决定一直专注于JavaScript,而且我从未后悔过。

我必须通过编写工具、脚本、应用程序等各种方式来学习新语言,任何能帮助我理解语言内部机制的东西我都尝试过——而不仅仅是语法。当然,那时候我还是个学生,我努力弄明白事物是如何运作的,以及如何修复我制造的所有bug。

后来我接触到了开发者社区。多亏了互联网,我可以向其他人——一个由专业且经验丰富的开发者组成的社区——寻求帮助。我简直惊呆了!我通过阅读开发者们的博客文章、观看他们在 YouTube 上的教程,以及在众多技术论坛和 IRC(没错,它现在仍然存在!)上讨论各种话题,学到了很多东西。

我从其他开发者无偿分享的知识中学到了很多,他们纯粹是为了帮助他人。正因如此,我决定加入这个社区,尽我所能分享我的学习心得。对我来说,这是理所应当的:是别人帮助我成为一名优秀的开发者,现在轮到我回馈社区,帮助其他开发者了。也正是在那时,我开始关注其他开发者的效率——当然也包括我自己的。我们都在同一条船上,不是吗?

随着我职业生涯的成长,我开始思考如何以新的方式帮助其他开发者。我的意思是,写文章(在Medium上写,也为纸质杂志写)固然是一个很好的开始,但我无法衡量我的文章对目标受众的影响。于是,我决定走出去,与这些开发者们见面,希望能与他们面对面地交流学习。不出所料,各种聚会、会议和开发者活动正是汇聚这些充满热情的开发者的好去处。

顺便提一下:热衷于帮助其他开发者(希望如此)也能让你获得谷歌开发者专家计划(或类似计划)的提名。我很幸运能在 2015 年加入 GDE 计划,并有机会帮助和影响更多开发者!感谢谷歌!

长话短说……

如今,我依然乐于帮助其他开发者。而且,信不信由你,这已经成为我在微软的全职工作,担任 Azure 高级开发者布道师。

那么,开发者布道师究竟是什么?优秀的开发者布道师需要具备哪些素质?为什么对企业来说,聘用充满热情的开发者布道师是一个正确的决定?让我来尝试解答这些问题。

什么是开发者布道师?

首先,我们要明确一点:开发者布道师也是工程师。他们在各自领域拥有扎实的技术背景,他们构建过应用程序并将其部署到生产环境。他们中的一些人甚至还搞砸过生产环境,或者不小心删除了客户的数据库(这是真事)!

鉴于此,开发者布道师不应该是市场营销或销售人员——有更适合他们的岗位。我的意思是,你最好不要招工程师去做市场营销或销售。我们工程师不擅长这个。

然而,开发者布道师应该能够向市场营销或销售部门提供反馈。更重要的是——至少对我而言——他们应该能够向产品管理部门提供反馈,从而根据开发者和客户的需求来影响产品路线图。

从历史上看,许多科技公司都会聘请开发者布道师来推广他们的平台,帮助终端开发者使用他们的产品,如今依然如此。因此,开发者布道师的真正含义是帮助开发者成功使用某个平台或技术。开发者布道师的角色还在于搭建工程团队和开发者社区之间的桥梁。他们的工作是平等地、双向地向双方提供反馈。

开发者布道师是真正为开发者而非平台代言的人。开发者应该是开发者布道师的首要任务。

优秀的开发者布道师需要具备哪些素质?

我认为工程师不能仅仅因为经理的要求就转型成为开发者布道师。我也认为开发者布道师天生就充满热情和无私奉献精神。这些特质是无法通过教授或学习获得的。

我个人曾尝试说服几位开发人员分享他们的知识,但我失败了!我发现有些工程师更喜欢写代码(谁不喜欢呢?),并且全身心投入到解决问题或构建产品中。与其他开发人员分享知识并不是每位工程师的首要任务。这完全可以理解,也应该得到尊重。如果你是管理者,不要强迫你的工程师伪装成他们不擅长的人,让他们陷入尴尬的境地。没有人愿意处于这种境地。

那么,优秀的开发者布道师需要具备哪些特质呢?我发现,很多开发者布道师(如果不是全部的话)都具备以下几个特点。

持续学习

作为工程师,即使毕业后,我们也从未停止学习。毋庸置疑,真正的知识无处不在。开发者布道师和其他工程师一样,都是孜孜不倦的学习者。他们孜孜不倦地汲取知识,利用一切已知资源保持与时俱进。我认识的开发者布道师不仅会推广某个平台或产品,还会尝试使用其他产品——甚至包括竞争对手的产品。为什么?因为最终开发者通常需要使用不同的产品和工具来构建他们的应用程序。开发者布道师深谙此道!

跳出思维定式

学习新事物如果不去挑战它们,那就毫无意义。我从不把刚学到的东西视为理所当然。我总是问自己同样的问题:“为什么……?”、“如果……会怎样?”、“这个功能如何改进?”、“它的底层原理是什么?” 当然,任何一位好奇心强的工程师都会自然而然地提出这些问题。

开发者布道师也不例外。他们应该能够从宏观层面解释某个功能的底层工作原理,或者提供一些关于他们所推广的产品或平台的技术见解。许多最终开发者迟早都会问到这些问题,所以要做好准备。

构建实际应用

如果你不去运用新知识和理论开发应用,那么学习新知识和了解其背后的理论就毫无意义。如果你要为开发者代言,那么你至少应该设身处地地站在最终开发者的角度思考,努力掌握你所倡导的产品和平台。这时,你的工程技能就派上用场了。

使用你所倡导的工具构建实际应用,将有助于你更好地了解它们的局限性,并有望向工程团队提出一些改进建议。开发者布道师的职责还包括确保你所倡导的平台和工具能够提供最佳的开发者体验。

分享与关爱

与开发者社区“分享”信息的能力是开发者布道师角色中不可或缺的一部分。如果你讨厌分享或帮助他人,就无法胜任这个角色。这没关系,我们并非都是利他主义者!但是,假装为开发者发声将会非常——你没听错——非常具有挑战性!

此外,大多数公司在开发者布道师的职位描述中都要求应聘者具备良好的口头和书面沟通能力。我虽然认同这一要求,但我认为“沟通能力”不应取代或混淆“分享和关怀”的能力。换句话说,招聘一位真正热爱分享和帮助他人的开发者布道师,远比招聘一位拥有良好沟通能力的人重要得多。事实上,前者更难培养!

简而言之:你想招聘一位优秀的开发者布道师吗?那就招聘一位好奇心强、求知欲旺盛、思维跳脱常规、具备良好工程技能以及真正“分享和同理心”能力的人。

干杯。


请在推特上关注我@manekinekko,获取更多最新消息。

文章来源:https://dev.to/wassimchegham/what-the-heck-is-a-developer-advocate-4l2a