Sonar 的开发者倡导者在成为我们的开发者社区和公司之间的桥梁方面发挥着至关重要的作用。它们促进协作、知识共享和创新,最终通过现代应用程序开发为开发人员的成长和成功做出贡献。
通过与开发人员建立牢固的关系并宣传清洁代码的价值,他们帮助塑造技术格局并推动行业的积极变革。他们收集有关客户和社区需求的重要见解,并帮助推动 Sonar 产品的持续创新。
我们花了几分钟时间与两位开发倡导者坐下来,了解他们是如何开始自己的职业生涯的。
BEN DECHRAI:1999 年,我从大学毕业后就开始了自己的第一个开发职位。当时我使用 VB.ASP 进行编码,但很快就进入了 PHP 开发领域。当我搬到澳大利亚墨尔本时,我参与了开发者社区,在聚会和会议上跑步和演讲。
然后在 2018 年,我被一家美国公司聘为开发倡导者,我决定关闭我的咨询业务,全职从事这份工作。我已经知道我喜欢与社区互动,并且很高兴能够致力于此。
我喜欢开发者倡导的一件事是我可以代表我所相信的公司和品牌,而且我也可以代表社区。这是关于与开发人员就他们面临的问题进行真实的对话。这不仅仅是我试图解决他们的问题。我也向他们学习,这种互动是强大的。
开发者宣传处于业务的边缘,因为我们代表一个品牌并为开发者带来产品意识,同时也为我们的产品团队收集反馈。我们两全其美 - 我们让开发人员的生活更轻松,同时为我们工作的业务提供帮助。
PHIL NASH:我于 2007 年开始在一家数字资产管理公司担任初级前端开发人员。那时,它只是构建网页并努力让它们在 IE6 中运行。我很快就有机会加入一家名为 Mint Digital 的机构,该机构正在使用 Ruby on Rails 构建应用程序,这让我能够了解完整的堆栈。我很幸运能够领导一个平台的开发,在该平台上我们使用 Instagram API 将照片变成冰箱贴,这是一个令人高兴的成功。
在 Mint 期间,我还更多地参与了当地的开发者社区。我开始参加当地的活动和黑客马拉松并发表演讲。这引导我担任下一个角色:Twilio 开发人员传播者。这个角色使我能够利用自己的经验向世界各地的开发人员传授通信 API——如何仅用几行代码发送短信和拨打电话。
今年年初,我加入了 Sonar,我很高兴能成为传播清洁代码这一信息的团队的一员。您会发现我撰写技术文章、从事开源项目或在活动中发表演讲来传播此信息,并利用我的经验帮助开发人员使用清洁代码原则构建更好的应用程序。
BD:我七岁左右时第一次考虑成为一名开发人员。我从德国搬到英国,在那段时间,我记得我对计算机着迷。我认为这主要归功于我的父亲。他是一名法医科学家,拥有一个配备测试机器和仪器的小型家庭实验室。他有由计算机控制的化学试剂测试机,我对软件和硬件的交集很感兴趣。
在英国,我们得到了一台与今天类似的个人电脑,我仍然记得给我留下了深刻的印象。我开始使用 Basic 和 Assembly 进行编程,然后就开始涉猎。我喜欢编写代码并让计算机做我想做的事情的满足感。
当 Windows 3.1 是主要的桌面图形用户界面时,我编写了允许多用户功能的软件,这样您就可以保存您的配置文件并修改设置,而不会打扰其他家庭成员。那时我进入计算机科学领域是不可避免的。
有些人认为代码是简单的指令,可以让计算机做你想做的事情。但这是一个创造性的过程,因为有许多不同的方法可以实现相同的算法或使软件执行特定的业务逻辑。由开发人员决定如何实现它,然后实现它。一旦您决定了实施策略,甚至更精细的细节都可能发生变化。
PN:我从来都不是一个真正知道长大后想做什么的孩子。我很长一段时间都不知道自己想成为一名开发人员。但当我回顾我的一生时,我可以看到一条线索引导我到达我想要的那一点。我在学校与计算机的第一次互动是与 Logo,你发出指令的乌龟会在屏幕上画东西。然后在 13 或 14 岁的时候,我记得上过一门 HTML 课程。我特别记得建立了一个关于我们自己的页面,然后我将内容放入表格中并根据我的喜好进行格式化。
我在高中毕业时学习了计算机科学,获得了数学和计算机科学学位。当我应该专注于期末考试时,我却在为自己和我认识的人闲逛并建立网站,我意识到我可以把这作为一份工作。一旦我意识到这一点,我就开始寻找初级开发人员的工作。我建立了一个博客并开始写我所学到的东西,最终使我在大约一年后成为一名开发人员。
BD:我在职业生涯早期学到的一件事是激励团队的重要性。作为一名开发人员经理,我学到的最大的教训之一是,你可以通过更少的工作为团队做更多的事情。您可以通过以人员身份支持团队来提高生产力,而不仅仅是帮助编码方面。
这很重要,即使是基本的,比如请每个人吃午餐并确保每个人都有休息时间来减压。这是一个值得反思的重要教训——如何最好地将我的努力用于更大的利益。你认为你的能力最适合的地方并不总是适合团队的。
PN:作为一名开发人员,我学到的最重要的教训之一是,这个行业中有太多的东西不为任何人所知。人们每天都在突破编程和开发的界限。你学得越多,你就越知道要学的东西也就越多。因此,退后一步并了解您不需要学习所有内容可以消除压力。相反,了解您所构建的语言和平台的基础知识非常重要,并且通过这样的坚实基础,您将能够在需要时学习您需要的任何其他内容。
BD:今天,你不能 100% 依赖生成式 AI 工具来编写代码。它们不是人类的合适替代品。虽然人类可能会编写有错误的代码,但他们也可以修复有错误的代码。您的计算机仅通过查看代码并不知道该代码是否有错误。目前,人工智能不会消除对软件开发人员的需求。
人类仍然是发展过程的重要组成部分。但是,如果您想成为一名开发人员,那么深入了解 Web 开发或软件工程的编码方面非常重要。理解良好的软件架构将变得更加重要。
我们将达到开发人员仍然存在的地步;他们只会使用人工智能工具来提高生产力。我们将能够更快、更可靠地创建软件。
PN:如果您是作为开发人员开始的,请写下您的经历和学到的东西并发布它们。写下你的经历有很多好处。他们从个人开始。当你写某件事似乎是为了向别人解释它时,你必须更深入地挖掘你对它的理解,才能将其转化为解释。您最终会更加清晰和理解地学习该主题。
如果您创建一个关于某个主题的知识库并发布它,这些著作可以帮助社区中的其他人。你如何解释某件事可能是解锁别人理解的关键。写作也可以带来不同的机会,比如网络和协作。
我的整个职业生涯都是基于这样一个事实:我开始撰写有关 Web 开发的文章来了解它。这让我获得了前两次工作机会。继续写作、学习和发布使我将分享知识和开发者关系作为一项工作。我选择在职业生涯初期开始写下我的经历,这给我带来了很多机会,我建议你也这样做。
BD:这意味着下一个人可以阅读某些内容。如今,更重要的是考虑下一个将阅读您的代码的人,而不是像我们过去那样,当计算机的内存和处理能力有限时,计算机会如何处理代码。如果下一个阅读它的人能够在一分钟而不是 10 分钟内理解它在做什么,那么您正在提高开发人员的未来绩效。您更有可能在编码时发现业务逻辑问题、安全问题和错误,而不是等待别人报告您的软件问题。
虽然我们喜欢将自己视为时不时聚集在一起的个人贡献者,但我们通常更加依赖我们的队友。你的团队如何互动很重要;正在进行的沟通比您想象的要多。通过清洁代码进行的沟通与站立会议和回顾等仪式一样重要。
PN:干净的代码第一时间纠正了我。这意味着避免编写不必要的错误或过于复杂的代码或引入安全问题。您有信心将这些代码部署到生产中,但当您在六个月或一年后再次使用它时,您会很高兴。干净的代码从来都不是遗留代码——使用它总是一种乐趣。
Copyright © 2022 All Rights Reserved. 地址:上海市浦东新区崮山路538号808 苏ICP123456 XML地图