• 我的订阅
  • 科技

影响开发者生产力的因素有哪些?

类别:科技 发布时间:2023-07-20 16:00:00 来源:CSDN

【编者按】工欲善事,必先利其器!在日常开发中,你觉得影响开发者生产力的因素有哪些呢?

原文链接:https://jeremymikkola.com/posts/developer_productivity.html

作者 | Jeremy Mikkola译者 | 弯月

责编 | 夏萌

出品 | CSDN(ID:CSDNnews)

影响开发人员生产力的因素有很多,有些非常明显,而且测量也很方便(比如构建时间)。但我认为我们往往会忽略一些重要的因素,也许是因为这些因素很难直接测量。举个例子,没有任何系统会收集一个数字来显示每位开发人员对他们所使用的系统的理解程度。直接测量开发人员的头脑内部状况是不可能的。而直接测量输出(他们的生产力),也无法通过数据了解你缺少什么(比如文档)。

对于下文提到的一些因素,你可能很难找到明确的衡量标准,但我们应该确保这些领域内不会出现影响生产力的问题。虽然有些因素之间互相有重叠,但由于出发点不同,因此应该分开考虑。

知道要做什么

如果构建的是错误的功能,那么即便速度再快,也是无用功。重点在于了解客户需要什么,其他团队会接受什么(数据库表可以有多少个索引?某个功能会共享我们无法合法共享的信息吗?)以及之前尝试过哪些方法被证明无效。

有时,在构建时你就会意识到错误,但你还是会为了积累经验而构建下去。你可以通过原型了解为什么某种方法行不通,或者通过最小化可行产品了解客户的实际需求。尽管如此,你仍然需要了解哪些想法值得尝试。

越少越好

能够快速完成任务固然好,但不战而胜则更好。公司的流程可能会平白增加一些无用功,如果没有这些繁琐的流程,你的工作效率会更高。有时,只需要调整流程就能找到更简单的方法,减少工作量,同时还能提供相同的价值。

此外,为了确保公司正常运营,我们需要付出一定的努力。这种工作需要不间断地完成(例如回复票据),但无助于推动项目向前发展。虽然从许多指标来看,这项工作十分高效(票务关闭、提交合并),但无益于公司的发展。

快速的工具

开发人员需要使用很多工具,通过编辑器高亮显示代码并自动补齐方法名称,通过 git 提交代码,通过构建系统运行测试。鉴于这些工具的运行频率之高,它们多占据一秒,就有可能导致成本上升。除了浪费大量时间之外,工具的速度过慢还会导致开发人员的注意力分散。由于工具缓慢而导致工作陷入停滞十分打击士气,特别是对于那些背负着沉重的时间压力的人来说。

开发人员拥有的知识

这是一个很难测量的因素!

在其他条件相同的情况下,开发人员拥有的相关知识越多,生产力就越高。他们无需深入挖掘代码,因为他们知道代码的基本运作机制。他们知道如何使用工具以及避免哪些陷阱。他们可以提出正确的问题。10倍速的开发人员真的存在,他们是真正了解代码库的人。

这意味着,团队拥有的产品数量不应超出集体的头脑容量总和。这也意味着,我们应该最大限度地减少所有权易手的频率,毕竟这个世界上没有人比创建者更了解产品本身。理想情况下,刚接触某个系统的人应该与已熟悉该系统的人一起工作并向他们学习。

另外,系统之间需要建立明确的界限。具有简单语义、整洁的接口意味着,你只需思考该接口的属性,而不必了解其背后的整个系统。

文档是传播知识的好方法。当开发人员需要完成他们不熟悉的特定任务时,尤其需要文档的帮助。缺乏文档可能会导致开发人员的速度下降,因为他们必须研究如何完成任务,他们会犯错误并重做某些工作,而且他们还需要等待其他团队答疑。如此下来,一小时的任务很容易就会拖延到两天。如果 100 名开发人员都需要完成这项任务,那么缺少一页文档的成本大致相当于一名开发人员的年薪。

这也证明我们需要加强专业化。要求每位开发人员承担广泛的工作实际上很低效。花费一个小时学习某些安全系统或容量规划流程的细节,那么相应的花费在了解自己的系统或需要解决的问题领域的时间就会减少。

基础设施

基础设施应该辅助开发人员的工作,而不应该成为一种障碍。这意味着,基础设施必须与开发人员的工作紧密结合。每个基础设施在设计时都会考虑一些用例,但实际项目的需求可能并不属于这些用例。“你必须使用我们的基础设施”、“没有我们的基础设施,你就无法实现”,听到这类的话会让人很沮丧。结果是,你必须浪费时间处理基础设施,或者在会议上说服基础设施的所有者满足你的需求。

减少技术债务

现有的代码永远无法完美地满足你的需要,原作者无法通过水晶球来预知你需要什么样的改变。但有些代码的修改难度会远低于其他代码。在考虑如何完成某个功能时,我希望答案不是“我们必须重构整个系统”。随着技术债务的增加,即便是很小的功能改动也会涉及大范围的系统变动。减少技术负债可以最大限度地减少(a)你需要理解(b)你需要修改的代码库规模。

我们需要偿还技术债务。中途放弃或降低这些工作的优先级可能会导致系统每况愈下。

降低故障率

如果工具无法运行、构建失败、部署失败,或者代码变更导致生产错误,则必须花费时间来处理这些故障。降低这些故障的概率可以提高生产力。

除了遭遇故障的工程师外,出现问题的系统的负责团队也需要花费大量时间来诊断和修复故障。

切合实际的生产实践

学习如何解决特定问题的最佳方法是编写原型。如果环境不允许设计原型,那么就有可能阻碍开发人员发现最有效的方法。如果监控工具使用起来很痛苦,那么开发人员就不会制作太多的仪表板,测量的指标也会减少,因此决策将很难由数据驱动。另一方面,如果可以将一次大变更拆分为多个较小的代码审查,就可以降低代码审查的难度,并提高部署的安全性。

影响开发者生产力的因素有哪些?

集中注意力

工程师需要按照制造商的时间计划推进工作。他们需要集中注意力。但他们的注意力可能会被会议和干扰打断,其中包括缓慢的 CLI 命令、缓慢的测试以及遇到不知道如何完成但需要研究的任务。

有太多需要操心的事情会导致工程师无法集中注意力。迫在眉睫的最后期限或经理提出的需要回答的问题会占据你的大脑,导致你无法专注于其他工作。

影响开发者生产力的因素有哪些?

完成任务

完成 50% 的构建并不意味着生产力为 50%,也许是 0%。推翻一切从头再来,何来效率?

在某些情况下,中途放弃项目是正确的选择。与沉没成本谬论作斗争有时是正确的做法。但在项目完成之前,我们不应该随意改变优先级。这可能会导致团队的生产力降至零。

影响开发者生产力的因素有哪些?

总结

你不一定需要构建一个仪表板来测量上述因素,但我认为任何开发人员都可以告诉你其中哪些因素正在影响他们的生产力。解决这些问题可以大大增加完成的工作量。有些问题可能非常容易解决,有时花几个小时编写一页文档就有可能为公司节省数千个小时。工欲善其事必先利其器。

▶百度文心大模型 3.5 斩获7个满分、三个第一;苹果正在测试 AppleGPT 产品;谷歌给员工断网,降低网络攻击风险|极客头条

▶ 盘点十款塑造软件开发的革命性IDE

▶ 「卷轴」iPhone 有戏?苹果新专利曝光,果粉激动:终于要变了! 返回搜狐,查看更多

责任编辑:

以上内容为资讯信息快照,由td.fyun.cc爬虫进行采集并收录,本站未对信息做任何修改,信息内容不代表本站立场。

快照生成时间:2023-07-20 18:48:03

本站信息快照查询为非营利公共服务,如有侵权请联系我们进行删除。

信息原文地址:

预约体验|Authing 身份云发布「持续自适应多因素认证(CAMFA)」
...提供安全合规的身份认证访问服务。Authing 是国内唯一以开发者为中心的全场景身份云产品,为企业和开发者提供高安全、高性能、高生产力的用户认证和访问管理服务。Authing
2023-06-05 19:00:00
...,当发生事故时,责任应由谁承担?是车辆制造商、软件开发者,还是车辆所有者?此外,AI系统可能存在的偏见问题也不可忽视。由于AI系统通常以数据为基础进行学习,如果输入数据本身存
2024-01-05 06:49:00
高舜礼:古村古镇类旅游开发怎么提高成功率
...得半点的侥幸与马虎。期望张壁古堡和诸多古村类资源的开发者,以自觉遵循旅游发展规律的探索实践,开发有竞争力的旅游产品,赢得四面八方源源不断的客流,以扎实亮眼的发展业绩,去诠释旅
2024-01-15 12:08:00
苹果MR惊艳亮相!未来或开启空间计算时代,机构看好产业链机会
当地时间周一(6月5日),苹果2023全球开发者大会(WWDC23)在美召开,此次大会的口号是“码出新宇宙(Codenewworld)”
2023-06-06 14:44:00
...保第三方合作伙伴能够实现无缝接入。同时,要着力构建开发者生态,通过建立开放平台开发者门户,提供完善的文档、测试环境和沙箱机制,大幅降低第三方开发的门槛。与此同时,要积极开展各
2026-01-20 06:52:00
开普勒人形机器人正式面世
...勒始终坚持践行的理念。在开普勒人形机器人发布同时,开发者平台KeplerOS也正式推出。KeplerOS平台采用模块化设计,开发者可以根据需要开发各种应用模块,也可以通过可视
2023-11-20 12:44:00
新质生产力典范!这家国企要打造全栈“AI工厂”
...要。一个良好的AI生态,可以吸引更多企业、研究机构和开发者参与其中,用思想的碰撞催生出新的技术和应用创新。通过整合产业链上下游资源,可以让各环节开发商协同工作,提高整个产业的
2024-06-27 09:21:00
阿里云李中雨:阿里云助力中小企业逐浪AI时代|新质生产力·AI Partner大会
...化。阿里云通义大模型的不断迭代和优化,正在为企业及开发者提供前所未有的智能化体验,听悟是在会议中总结出来的系统,如何通过语音和文档建立连接,快速生成会议纪要、工作流,快速把工
2024-05-29 13:49:00
未来机器人智能化可能带来哪些技术发展和社会变革?
...和产业化工作,旗下“古月居”是中文地区知名的机器人开发者社区平台,拥有超过100万用户提供软硬件控制平台、个性化应用和一站式服务。获华中科技大学工学博士学位,高级工程师,曾参
2023-10-22 11:56:00
更多关于科技的资讯:
孙小荣:2026,拥抱“液态旅游”的崛起
中国文旅产业正处在“百花齐放”与“激烈聚变”交织的关键阶段。一面是消费需求的多元爆发,一面是行业形态的深度重构。“乱花渐欲迷人眼”的表象下
2026-01-27 13:58:00
中国网1月27日讯 据国家安全部微信公众号消息,国安部发布提示:生物数据安全藏隐患,警惕生物数据跨国泄露。警惕这类数据跨国泄露跨国生物合作能有效整合全球资源
2026-01-27 11:52:00
橙友“飞舞精灵”向橙柿直通车反映:请问为啥把公交充值补登功能从原自行车租用点统一放到地铁内的杭州通自助服务机上呢?试想一下
2026-01-27 11:59:00
限量20名!贵州普瑞眼科全城招募EVO+ ICL(V5)首批摘镜体验官
多彩贵州网讯(本网记者 罗晟鸣)近日,记者从贵州普瑞眼科医院获悉,与欧美同步的第六代EVO+ICL(V5)晶体植入手术正式登陆贵州
2026-01-27 12:06:00
三墩镇后陡门,因“十个勤天”成为青年心中的“奋斗符号”。昨天,一场兼具青春活力与务实成效的创新招聘会在这里火热进行——“种地星球·2026禾伙人 新春offer见面会”通过“综艺IP+招聘服务”的创新模式
2026-01-27 12:29:00
即刻体验国内最强推理模型Qwen3-Max-Thinking,千问PC和网页端已接入
1月26日,阿里正式发布旗舰推理模型Qwen3-Max-Thinking,AI助手千问同步在PC端和网页端(qianwen
2026-01-27 13:14:00
沂蒙老区剑指“人工智能高地” 底气何在?
鲁网1月27日讯 (记者 杨成喜 吴艳萍)1月19日,在临沂市第二十届人民代表大会第六次会议上,临沂市在政府工作报告中再次提出“加力突破人工智能+”
2026-01-27 12:48:00
山东商务职业学院智能通风设备入驻菏泽储备粮油管理有限公司
鲁网1月27日讯(记者 魏萱)近日,山东商务职业学院智能制造学院技术团队赴菏泽储备粮油管理有限公司开展浅圆仓通风口防异物智能装置的安装调试工作
2026-01-27 11:02:00
走进杭州滨江阿里中心,大楼门口摆着一个小摊,售卖着“吃个便饭”公司自己打爆的零食单品。这看似随意的布置,却展现出创始人王晨旭的商业逻辑
2026-01-27 08:26:00
昨天是腊八节,在杭城上空,一场特别的“送福”正在进行。上午,一批批热气腾腾的腊八粥从方回春堂“起飞”,通过无人机精准空降至城西银泰城
2026-01-27 08:26:00
近日 ,在瞬息万变的电商浪潮中,90后创业者买清禾以其独特的“长期主义”经营哲学,完成了一场从头部主播到品牌主理人,再到生态构建者的深度转型
2026-01-27 09:03:00
河北新闻网讯(王羽、王育民)2026年“双节送好礼·好礼惠万家”元旦春节消费季活动启动以来,唐山市各大商圈、商贸主体陆续推出系列消费促进活动
2026-01-27 09:28:00
厦门网讯(厦门日报记者 翁华鸿 通讯员 周平)近日,市公共资源交易中心正式上线渔港工程电子交易系统,标志着我市渔港工程建设项目实现就地
2026-01-27 08:02:00
人头攒动、美食飘香,腊八节前后,小店区商圈已提前奏响欢快的“幸福交响曲”,各大商超、酒店等纷纷亮出“年货王牌”,点燃市民的采购热情
2026-01-27 08:07:00
从哈尔滨到杭州,跨越2000多公里,去年刚刚大学毕业的“00后”小陆,昨天下午走进了西湖区三墩镇后陡门58号,这个因劳动纪实综艺《种地吧》成为青年心中的“奋斗地标”
2026-01-27 07:55:00