0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何编写代码并不能让你成为10倍效率的开发人员

lPCU_elecfans 来源:未知 作者:李倩 2018-11-08 10:32 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

几乎每个软件开发人员或程序员都见过其他人编写的代码,说明了“任何人都可以编码”。但你有没有遇到过所谓的神话般的“10倍效率的开发人员”?作为一个10倍效率的开发人员,在编写代码方面做得很少, 更多的是知道要写什么代码。

要成为一名10倍效率的开发人员,你必须学会在这种环境中脱颖而出,甚至创立自己的公司来领导这项工作。任何人都可以是一个10倍效率的开发人员,至少在每一天的某个时刻。我相信所有开发人员都应该专注于提高生产力和团队合作的三件事。

来说说这三件事

要成为一名10倍效率的开发人员,你需要几年的工作经验,无论使用哪种编程语言和工具集。你必须善于解决问题和编写代码;这是必须的。

重要的是你要明白,如何编写代码并不能让你成为10倍效率的开发人员,10倍效率的工程师,10倍效率的程序员,或其他任何你想要的名字。

你知道5W:“谁(Who),什么(What),在哪里(Where),为什么(Why),什么时候(When)”。虽然这些都适用于软件开发,我想关注那三个定义了10倍效率的开发人员的特点。这三项把普通开发人员与10倍效率的开发人员区别开来:

是什么(What)

为什么(Why)

什么时候(When)

知道做什么(What)

在企业界,开发人员经常从事他们不太感兴趣和不理解的项目。对于大多数开发人员来说,这不是一个大问题,只要他们收到了很好的指令,并且也得到了明确的输出定义。

问题是开发人员通常没有得到足够的指令。相反,我们使用一种叫做 “敏捷开发” 的东西。我们收到一个记事帖,上面有几个字,并指望我们知道到底需要做什么。

软件开发就是沟通。开发人员需要知道我们在做什么,我们试图解决什么问题,以及到底需要什么样的结果。我们知道的越多,就可以更快的完成。最重要的是,知道工作的目的和什么会使工作成功是很关键的。

水平差的开发者会在一个项目的错误方向上花几个小时而不问任何问题。他们就是我所说的 负10倍效率的开发人员,因为他们一事无成,浪费了所有同事的时间。几乎每个人都遇到过这些开发人员,与他们一起工作会让人感到沮丧。你一定要小心,不要养成他们的习惯!

有些开发人员即使没有很多细节也能很好地工作。他们有大量的创造力,并提出正确的问题。这些独角兽可能是10倍效率的开发人员。他们知道如何解决问题,并经常提升整个团队的水平。

最重要的是,10倍效率的开发人员真的很擅长快速地确定需要完成什么和问什么问题。

从为什么(Why)开始

成为10倍效率的开发人员的第一步是对你要解决的软件和问题变得充满热情。你需要从里到外完全理解它。这首先是要对你工作的公司及其使命充满激情。

不要因为别人告诉你要写一个按钮(button),然后你就只写一个按钮。努力在更高层次上去理解为什么(Why)。如果你持续关注为什么,你对你的团队和公司会有更大的价值。

做一个好的开发者和优秀的问题解决者,而不是最好的程序员。

我会把自己描述成一个黑客开发者。我是那种能很快把一些丑陋的代码拼凑起来并解决几乎任何问题的人。我的代码很少是美丽的,但它能解决问题。这才是最重要的。

你不必编写完美的代码与单元测试来成为一个10倍效率的开发人员。你需要知道什么时候要做和什么时候不做这些事情。

一个10倍效率的开发人员擅长解决特定的问题,并通过代码满足业务需求。你能做的最聪明的事情就是在你把项目交给其他人(他们更善于最后敲定一些架构和其他一些细节)之前就知道它能走多远。

什么时候(When)在你的内心,or not

知道什么时候要建立一个复杂的架构,而不是拼凑一些东西,需要经验和你蜘蛛侠般的感官。你要么有这种感觉,要么你根本不知道。

我曾与一些最聪明的开发者共事过,他们总是很糟糕的优先考虑模式和架构,而不是功能和排期。他们总是过度实现或者一遍遍重构,争取 “完美的代码”,而不是 “可交付的代码”。

10倍效率的开发人员必须利用他们的经验和本能来知道什么时候要专注于架构和完美,什么时候把事情搞定。

知道——

该做什么(What to Do)

该问什么(What to Ask)

许多软件开发归结于沟通技巧。可惜的是,在我们要工作的项目上许多注释和要求都不是很详细。一个10倍效率的开发人员知道如何阅读这些,应用他们知道的业务里的 “为什么”,并提出相关的问题。

最好的开发者知道在寻求帮助之前要在某件事情上花多少时间。他们也知道要问什么问题,以阐明需求来推进项目。

我已经写了超过15年的代码。可以说我是一个10倍效率的开发人员,或者至少我能。我知道我擅长什么,当我做我擅长的事情时,我可以很快地完成大量的工作。

如果你想做一个新产品的原型,我就是你要找的人。如果你需要寻求Angular,React或其他一些 前端的帮助,我绝对不是你要找的家伙。在这些任务上我将是一个负10倍效率的开发人员。

10倍效率的开发人员不是一个神话。他们确实存在。他们很可能是开发经理、架构师、首席开发人员或公司创始人。如果他们不是的话,他们应该转变。我后来成为了公司的创始人,到现在为止都两次了。

当然,没有人能在每一天的每个时候都是一个10倍效率的开发人员。我们没有精力或专注力每天以这样的速度工作。我们不是机器人

如果你理解软件开发的 “是什么(What),为什么(Why),什么时候(When)”,你就可以是一个更有效率和更好的团队成员–甚至是一个每天几个小时内的10倍效率的开发人员。这会有很大的不同。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程语言
    +关注

    关注

    10

    文章

    1959

    浏览量

    38927
  • 程序员
    +关注

    关注

    4

    文章

    955

    浏览量

    30788

原文标题:一个10倍效率的开发人员,有三件事必做不可!

文章出处:【微信号:elecfans,微信公众号:电子发烧友网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    单片机开发功能安全中编译器

    在各个领域,功能安全领域对开发人员提出了新要求。功能上安全的代码必须包括防御性代码,以防御各种原因引起的意外事件。例如,由于编码错误或宇宙射线事件而导致的内存损坏可能导致执行根据代码
    发表于 12-01 06:44

    AI算法开发,SpeedDP打辅助!不止10效率

    。而那些能够带来10工作效率的AI自然能够轻松取代人类。当然这也是相对的,不是每个领域都适用,厨师再快,也无法让实物快10熟;医生再优秀
    的头像 发表于 11-20 18:09 369次阅读
    AI算法<b class='flag-5'>开发</b>,SpeedDP打辅助!不止<b class='flag-5'>10</b><b class='flag-5'>倍</b><b class='flag-5'>效率</b>

    Bourns 深耕印度,在地设计 - Bourns 印度设计中心 为开发人员提供当地先进技术资源助力客户加速创新!

    班加罗尔 (Bengaluru) 正式成立首座设计中心。此新中心将作为以客户协作与创新为核心的研发枢纽,为当地开发人员提供完整的设计工具与技术支持,包括运用 Bourns 具业界领先地位的电源与保护组件之参考设计专业服务。 Bourns 印度设计中心采用成熟流程,协助客户快速进
    的头像 发表于 11-19 14:26 233次阅读
    Bourns 深耕印度,在地设计 - Bourns 印度设计中心 为<b class='flag-5'>开发人员</b>提供当地先进技术资源助力客户加速创新!

    嵌入式开发的关键点介绍

    。 嵌入式系统的应用非常广泛,例如:智能家居、智能手表、智能手机、智能汽车等等。嵌入式开发需要开发人员具备深入的硬件知识和编程经验,但是也有一些嵌入式开发工具可以帮助开发人员提高
    发表于 11-13 08:12

    Andes晶心科技推出AutoOpTune v1.0提升开发效率

    Andes AutoOpTune v1.0 可自动探索并选择优化编译程序选项,协助软件开发人员在效能与程序代码大小间取得最佳平衡,加速整体开发流程。
    的头像 发表于 08-18 10:23 898次阅读

    超小型Neuton机器学习模型, 在任何系统级芯片(SoC)上解锁边缘人工智能应用.

    这对开发人员意味着什么,以及使用Neuton 模型如何改进您的开发和最终应用。 ML 模型对于您所选微控制器的内存来说太大。 创建自定义ML 模型本质上是一个手动过程,需要高水平的数据科学知识
    发表于 07-31 11:38

    什么是零代码平台?

    协作效率,减少开发人员的工作负担。3.灵活适应产线变化 通过模块化架构实现「热更新」,产线工艺调整时,可在线进行功能选代,避免影响连续生产。4.显著降低开发及运维成本开发成本节约达60
    发表于 07-12 20:28

    嵌入式软件开发常用的软件有哪些?

    文档等非常方便,因为它查找,定位,彩色显示等功能非常强大。开发人员会当成源代码阅读工具使用。 4. Keil uVision5 Keil 5 软件是一款功能强大的嵌入式系统开发工具,主要用于
    发表于 07-03 17:06

    如何在恩智浦FRDM开发平台上实现代码的高效复用

    从零开始评估微控制器可能充满挑战。即使在编写代码之前,开发人员也需要深入了解想要使用的外设的特性。它们是否能够在不同产品间以一致方式运行?这些所谓的可移植性究竟有多可靠?面对这些不确定性,创建真正可移植的
    的头像 发表于 05-27 14:35 793次阅读
    如何在恩智浦FRDM<b class='flag-5'>开发</b>平台上实现<b class='flag-5'>代码</b>的高效复用

    Thingy:91 X 为开发人员提供了一个经过全球认证的、多传感器、电池供电的蜂窝物联网原型平台

    Thingy:91 X 为开发人员提供了一个经过全球认证的、多传感器、电池供电的蜂窝物联网原型平台 挪威奥斯陆 – 2024年12月10日 – 全球领先的低功耗无线连接解决方案提供商Nordic
    的头像 发表于 05-08 17:41 2250次阅读

    Java开发者必备的效率工具——Perforce JRebel是什么?为什么很多Java开发者在用?

    Perforce JRebel是一款Java开发效率工具,旨在帮助java开发人员更快地编写更好的应用程序。JRebel可即时重新加载对代码
    的头像 发表于 04-27 13:44 656次阅读
    Java<b class='flag-5'>开发</b>者必备的<b class='flag-5'>效率</b>工具——Perforce JRebel是什么?为什么很多Java<b class='flag-5'>开发</b>者在用?

    NanoEdge AI Studio 面向STM32开发人员机器学习(ML)技术

    NanoEdge™ AI Studio*(NanoEdgeAIStudio)是一种新型机器学习(ML)技术,可以让终端用户轻松享有真正的创新成果。只需几步,开发人员便可基于最少量的数据为其项目创建
    的头像 发表于 04-22 11:09 991次阅读
    NanoEdge AI Studio 面向STM32<b class='flag-5'>开发人员</b>机器学习(ML)技术

    基于RV1126开发板的人员检测算法开发

    在RV1126上开发人员检测AI算法组件
    的头像 发表于 04-14 13:56 632次阅读
    基于RV1126<b class='flag-5'>开发</b>板的<b class='flag-5'>人员</b>检测算法<b class='flag-5'>开发</b>

    如何提高嵌入式代码质量?

    的情况下也必须保持稳定的性能。 3. 硬件依赖:嵌入式软件紧密依赖硬件平台,需要充分理解硬件特性才能编写高效且稳定的代码。 了解这些特点有助于开发人员编写
    发表于 01-15 10:48

    代码在敏捷开发中的应用

    代码平台的定义 低代码平台提供了一个可视化的、拖放式的用户界面,允许开发者通过图形化的方式快速构建应用程序,而无需编写大量的代码。这些平台
    的头像 发表于 01-07 09:58 755次阅读