9个有效开发人员的人格特质

虽然不是详尽的清单,但这也不是要求清单。

许多特征是矛盾的。 实际上,最吸引人的是它们之间的平衡。

您很少会在一个人中找到它们,这就是使团队变得如此有趣的原因。

一个人很难完美地兼顾以下特征,但雇用或组建一个能将它们综合展示的团队则比较容易。

由于个体极端经常可以协作生产出比中位数上的一组更好的产品,因此这通常是优越的。

无论如何,整个帖子都应撒少许盐。

就像软件中的所有内容一样,这是一个基于他们的经验的个人观点,这可能与您自己的经历有所不同。

坚定不移的自信

坦率地说,作为软件开发人员,我们正在用自己的想象力创造新世界。

只是为了在不逃避恐惧的情况下着手这项工作,就需要一点自信。

要在其他人所依赖的系统的很大一部分上执行此操作,则需要大量的知识。

对于宇宙的这一小部分,您是上帝,是您所研究的一切的主人,您将不断被问到为什么事物是这样。

如果您是一个仁慈的上帝,那么用户为什么不能存储自己喜欢的甜甜圈口味? 当然,一个明智而公正的上帝会允许这样的事情吗?

从初级开发人员到首席开发人员的旅程(或贵公司可能采用的任意名称)通常很难获得这种信心。

高级人士在前进的每一步都应挑战您的每一个决定,不一定是因为他们认为这是错误的,而是可以帮助您了解为什么您认为这是正确的。

只有通过您的知识来之不易和经受考验,您的自信心才会坚定不移。

坚定不移的自我怀疑

等同于需要有信心来声明水是葡萄酒,同样需要怀疑的是,您是否正确实现了水到酒算法。

信心是一件非常有力的事情,但毫无疑问,它可能会被误导,并造成超出其​​价值的伤害。

毫无疑问,您为什么还要编写测试? 您肯定不需要验证您的代码是否具有完全的自信心吗?

谦卑的谦卑

谦卑是使自信和怀疑结合在一起的粘合剂。

这就是让您从“我99%确信这是前进的最佳方法,但我真的希望您对此有想法”的立场来与同行打交道。

从“我不太确定该怎么做”开始对话是长时间对话的秘诀。

从特定的角度开始对话的自信有助于缩短对话时间。

自我怀疑和谦虚地要求进行对话有助于改善思维。

谦虚地坦诚地承认自己在对话中遇到错误时,可能会达到最好的结果。

太有帮助了

无论是初级开发人员正在学习如何使用绳索,还是客户在使用您所负责的系统时遇到了麻烦,还是某个同事在想如何工作,您的默认状态应该是使某人的日子过得更好。

因此,开发团队之外的所有人常常听到“不”。

抓住一切机会说“是”,使事情变得容易或对某人更好是值得的。 这也会给您的“不”带来更大的影响,因为您通常会说“是”。

如果在也许太有用和拒绝请求之间做出决定,请总是在太有用的方面犯错。 您永远不知道何时需要帮忙以实物方式偿还。

很有同情心

这在某种程度上与乐于助人有关,但是如果有一个特质,我首先要强调的就是它。

我所认识的最好的开发人员一直对他们正在开发的系统有更广泛的了解。

有时会向他们提供他们渴望的上下文,否则他们会问“为什么这很重要?” 一遍又一遍,直到他们了解潜在的动机。

这不是因为他们不同意变更,而是因为他们想深刻理解为什么进行变更。 他们了解自己是他们工作的公司的催化剂,并希望尽可能地发挥作用。

作为开发人员,您通常在了解系统功能方面处于独特的位置。

通常,您会获得解决方案以实现明确的问题。

只有同理心才能帮助您发现正在解决的问题,这可以带来远远优于其他的解决方案。

健康的偏执狂

有效的开发人员知道总有人会吸引您。

即使您深刻理解了一个问题,已经与同行合作实施了最佳解决方案,并且完美地实施了该解决方案,但有人仍在设法找到一种游行您的队伍的方式。

这就是为什么我们可以防止SQL注入,跨站点脚本编写,锁定一切可能的原因等等。

这主要不是因为我们不信任别人,而是因为我们不信任任何人,甚至我们自己。

最糟糕的是游行队伍可能是你自己。

在六个月内,您可能会出于最充分的理由而非常有动力去改变某些事情的实现方式。

但是,如果您过去的自我(测试,文档等)没有足够的安全保护措施,您可能会无意间破坏现有功能,从而大肆游行。

高度好奇

最好的开发人员不仅知道自己的代码是如何工作的,还了解其下面的库和运行时的工作方式。

这通常是因为需要了解“香肠的制作方法”。 深入了解工作层次以下的几个抽象层通常可以帮助您在工作层次上编写更好的代码。

这种情况最常见的情况是了解哪些调用会导致外部调用,而不会导致外部调用,了解哪种模式会导致过多的内存或对象分配,从而导致膨胀或垃圾回收。

我喜欢我最初从马丁·汤普森Martin Thompson)那里听到的这个词:机械同情。 许多方法都可以使用,许多方法都易于维护,但是通常会有一种方法与您正在使用的库,正在其中执行的运行时或要部署到的硬件特别共鸣。

只有了解了更广阔的前景,您才能选择一种比其他人更同情的方法并获得好处。

毅力

软件开发在智力上具有挑战性,并且可能会让人情绪激动。

交付了急需的功能的高潮,发现错误的低潮,由于预算而使功能的低潮变得不可行,花费大量时间研究错误的低潮,确定为什么某些东西只能在您的机器上运行的低潮,积压的低点增长得比您可以实现的速度快,平凡的副本的低点变化以及其他琐碎的工作,这些工作在经过多年的磨合后才变得微不足道,...的低点……

实际上,这是一个非常糟糕的过山车。

这就是毅力是关键的原因。

您常常不得不在绝望或悲伤的低谷中跋涉。

但是根据前6个月的辛勤工作和纪律,有时候会有些事情,您需要进行一些更改,您需要实现的某些功能非常容易,以至于您会感到非常高兴。

如此之多,以至于您可以在接下来的6个月内直面残骸。

轻松自在

软件开发可能非常认真。

这是一个二进制的世界,零和一,黑白,对与错。

但是,很大程度上,这是主观的,一个人的权利可能是另一个人的错误,并且紧张可能会加剧。

简单的错误可以使世界崩溃,稳定的系统可以自发着火,忍者攻击随时可能发生,那些忍者也可能着火。

应该认真对待软件开发,但是确实需要一点幽默来应对。 有点开玩笑。

否则,事情会变得太严重,人们会感到压力,他们不再享受自己的乐趣,然后他们将无法专注于手头的任务。

消除紧张情绪并不需要花费太多时间-精心选择的GIF,完美的表情符号或共享有趣的链接。

这就是阻止一切沸腾的全部方法。

在一天结束时,它只是一堆零和一。

对以前的错误有良好的记忆

有效的开发人员努力避免两次犯同样的错误。

您经常会发现他们在自己的个人过程中有实践可以帮助他们避免这种行为。

例如,编写测试,记录特定事物的推理,使用代码工具等等。

小错误很容易犯,但仍需要时间解决。

如果您可以创建一个流程或使用一种可以帮助您避免犯小错误的工具,那么您可以将更多的精力放在避免大而昂贵的错误上。

TL; DR

一个有效的开发人员通常会具有以下人格特质:

  • 坚定不移的自信
  • 坚定不移的自我怀疑
  • 谦卑的谦卑
  • 太有帮助了
  • 很有同情心
  • 健康的偏执狂
  • 高度好奇
  • 毅力
  • 轻松自在
  • 对以前的错误有良好的记忆

什么特征会成为您的清单? 让我们知道

该帖子最初在Cronofy博客上分享。 前往那里获取有关软件开发,启动寿命和日历API的更多见解。

而且,如果您是Trello的粉丝,请不要忘记查看我们新的 Trello Calendar Connector Power-Up

From: https://hackernoon.com/9-personality-traits-of-an-effective-developer-c22c3c96720e

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值