代码之家  ›  专栏  ›  技术社区  ›  Brett Rigby

如何创建一个热情的开发团队?[关闭]

  •  36
  • Brett Rigby  · 技术社区  · 15 年前

    如果您有一个满是有能力的开发人员的房间,可以做些什么来鼓励这些开发人员对软件和软件开发变得兴奋和热情?

    不是花招,而是真正创造一个人们 希望 从事软件工作,不仅仅是因为公司是一个整体工作的好公司。

    27 回复  |  直到 10 年前
        1
  •  40
  •   Ryan Brunner    15 年前

    在我看来,促使开发人员增强工作热情的最重要的是对产品的所有权。所有的团队建设练习、阅读小组等都很好,但是如果开发人员没有所有权的话,最终都是无效的。

    在我看来,这是一个快速的、现成的清单,其中列出了一些对确保这一点非常重要的事情:

    • 开发人员在系统的未来设计中有着真实和诚实的利害关系。 总会有来自开发团队之外的需求,但是当发现这些需求时,开发人员应该被表示出来,并且能够对您正在工作的未来状态提供真正的输入。
    • 开发人员支持的需求或对您的解决方案的更改应该有发言权。 当然,需要找到一个平衡点,但是太多的公司没有适当的机制来允许纯粹以开发为中心的请求通过。这些可能是产品增强、构建单元测试或简单的重构,但它们对于产品的质量和给开发人员在项目中的利益至关重要。
    • 开发人员应该与用户联系。 一个开发人员,如果像地下室里的人一样处理大量的代码,就永远不会对产品有一个非常热情的方法或者开发他们自己的技能。
    • 接受新的技术,即使它只是一个概念验证或技术可以做什么的原型。 世界上没有一个开发人员对大量生成样板代码感到兴奋,他们永远不会兴奋。
    • 让开发团队拥有自己的过程。 从上届政府颁布的开发方法无疑会降低开发团队的积极性,他们现在需要处理规划会议和瀑布开发带来的额外负担。要求有一个过程存在,但在出现问题之前,不要插手细节。
    • “事情就是这样”从来不是一个失败过程的借口。 . 如果开发人员对他们需要遵循的过程有合理的关注,他们需要一个诚实的机会来反驳它。作为一名经理,你能说的最糟糕的事情之一就是“这是副总裁/执行官/首席执行官/上帝想要的方式,所以我们需要遵循它”。您需要支持您的开发人员所关注的问题,或者失败,允许他们直接与相关人员进行交互。如果你作为一个经理被视为主管的傀儡,那么祝你好运,再激励一个开发人员。
        2
  •  25
  •   SwDevMan81    14 年前

    尽你所能保护你的开发者远离所有的政治。让他们做他们最擅长的,开发软件。 没有什么能比得上在办公室内部政治中争吵更能扼杀一个高效的团队了。

    这段著名的对话最贴切地说:

    彼得·吉本斯:鲍勃,我有八个 不同的老板。

    鲍勃·斯莱德尔:对不起?

    彼得·吉本斯:八个老板。

    鲍勃·斯莱德尔:八?

    彼得·吉本斯:八,鲍勃。以便 意思是当我犯错的时候,我 有八个不同的人过来 告诉我这件事。那是我的唯一 真正的动机是不被打扰的, 还有害怕失去工作。 但是你知道,鲍勃,那只会使 有人努力工作到 被解雇。

        3
  •  20
  •   Rob Spieldenner    15 年前

    雇佣合适的人

    在面试过程中,问一些能让你看到他们对工艺的热情的问题。

    例如,他们是否:

    • 阅读软件书籍或博客,听播客?
    • 在家里玩新的语言/库?
    • 对开源项目有贡献吗?

    一旦你有了好人,就别挡他们的路。有适当的过程量,不要强迫不必要的标准化,倾听问题,诚实地说出事情发生的原因。

        4
  •  16
  •   T.E.D.    15 年前

    Peopleware 由德玛科和利斯特。

        5
  •  14
  •   RossFabricant    15 年前

    我还没有遇到一个有能力的开发人员,他对制作优秀的软件还没有感到兴奋。诀窍是远离他们的方式,而不是破坏自然的热情。

    这个 Joel Test 是个好的开始。

        6
  •  12
  •   Dave Swersky    15 年前

    可以做些什么来鼓励他们 开发者变得兴奋和 对软件和 软件开发?

    没有什么。

    对软件开发的热情来自内部,不能从零开始创造。培养现有的热情是很容易的——资源、培训,以及对管理层热情的明显赞赏就是一切所需。

    唯一的例外可能是以身作则。如果你很兴奋,其他人 可以 跟随。

    最新消息:正如其他答案中所说的,提前雇用员工更好。我会超过十个优秀的程序员,他们只想要一张薪水支票给一个优秀的程序员,他/她利用业余时间编写代码来娱乐。

    另一个最新消息:这个答案一直在上下摇摆,所以让我澄清一下。行动纲领的措辞 明确地 询问如何使现有团队对“软件开发”感到兴奋。我的论点是,如果他们对自己选择的职业不感兴趣,雇主就没有多少事能引起他们的兴趣。一个没有兴趣,没有动力的团队会把最吸引人的项目搞得一团糟。相比之下,一个充满激情的专业团队,他们喜欢自己的工作,可以制作出最好的计算器程序,并享受其中的每一分钟。

        7
  •  7
  •   Otávio Décio    15 年前

    有一个有趣的、有挑战性的、有利可图的问题要解决,所有开发人员都与结果有利害关系。如果没有,你的房间里就满是开发者,只要工资支票清清楚楚。

        8
  •  6
  •   Mitchel Sellers    15 年前

    我不得不同意帕斯卡的评论,但我不会从那开始。

    总的来说,已经证明给开发人员一个让他们喜欢自己工作的环境的最好方法之一就是给他们自由。然而,你在这里看到的是另一条路,你试图找到“充满激情”的开发人员。

    100%诚实地说,与“有能力”和“有激情”没有直接的联系。有数以百计的开发人员有能力成为程序员,并且在这方面非常优秀。但他们中的许多人并不想成为充满激情的开发人员。

    要创建一个充满激情的开发人员团队,你必须从招聘过程开始,并雇佣充满激情的开发人员,而不是试图“创建”他们。

        9
  •  4
  •   RHSeeger    15 年前

    对我来说,让我保持动力的是:

    • 我觉得有挑战性的问题/任务,我可以从中学习。
    • 以我认为合理的方式实施解决方案的计划。对我来说,没有什么比管理团队迫使我不相信的技术屈服于我的喉咙更能激励我了。
    • 与其他人讨论可能的解决方案,无论他们是否在同一个团队中。
    • 一个欣赏我努力工作的管理团队。
        10
  •  4
  •   Stack Overflow is garbage    15 年前

    准确地说,问题是“我有一个开发团队,我想让那些特定的开发人员对软件开发充满热情”,还是“我想要一个充满热情的软件开发团队”?在后一种情况下,不要雇佣不热情的人。

    在前一种情况下,你几乎是完蛋了。很难改变一个人的个性,以至于他们开始关心一些以前不感兴趣的事情。当然可以,但让我们面对现实吧。有多少人无法说服他们的另一半相信编程是有趣的?就这一点而言,有多少人没有接受女朋友对购物或鞋子的热情?;)

    说服人们分享你对某件事的兴趣和热情是一项艰巨的工作。

    除非你愿意把你生命中的几年时间留给每个开发者,去了解他们,了解他们是什么让他们做出选择,并逐渐推动他们去对他们以前简单认为是工作的东西感兴趣,否则你最好还是让他们离开,雇佣那些有经验的人。有动机开始。

        11
  •  4
  •   BlairHippo    15 年前

    给他们一些有趣的问题。

    给他们解决这些问题的方法。

    尽量减少他们必须处理的与解决这些问题无关的废话。

    奖励他们成功解决这些问题。别低估了签你薪水支票的人真诚地拍拍你后背的价值。

    给他们一个更大的风险投资的股份-超过下一个薪水。

    当他们提出一个他们认为值得解决的新问题时,倾听。

        12
  •  4
  •   Nathan Hughes    15 年前

    我认为最大的问题是公司必须重视开发人员能为公司做什么。如果这家公司是由小气鬼经营的,他们只是把你的开发者视为一笔开支,他们迫不及待地想摆脱,那么你就注定了。开发人员的团队需要被管理层视为一种战略资产,使他们现在赚钱,将来也能赚更多的钱。

    公司内部的良好沟通也是至关重要的。开发人员必须能够了解公司需要他们做什么。独裁的自上而下的官僚主义和蘑菇式管理会破坏士气,使开发商无法增加价值,不管他们给工作带来了多大程度的热情。你的团队构建的软件只会和公司的沟通一样好——我想这就是 Conway's Law 是关于。

    因此,这是一个很大的挑战,在许多情况下,这是不可能的,因为高级管理层会对优先事项和沟通有自己的想法,并且好运会影响他们。但另一种选择是 guerrilla development, 在那里,你与自己的公司进行着无休止的斗争。

        13
  •  3
  •   Roman    15 年前

    钱,钱,钱…也不要说,如果项目是令人兴奋或无聊的例行程序,金钱并不重要。

        14
  •  3
  •   Wim    15 年前

    你没有。

    你的团队中也有这样的人 学习并且总是想让自己变得更好,或者你的团队中没有这样的人。当然,现实是,你会有一个混合的袋子。

    只需要雇佣热情的人(这很容易辨别),而不要雇佣那些认为编程/开发软件只是“简单”工作的人。

    在我看来,要把完全的非狂热者变成充满激情的程序员是不可能的。没有银弹。

        15
  •  3
  •   HandyGandy    15 年前

    以温伯格的方式:

    你问错了问题。正确的问题是“管理者做的那些让开发人员沮丧并降低道德感的事情是什么?”那就不要在你的环境中容忍这些事情。

    哦,顺便说一下,你应该已经知道那个问题的答案了。如果你找不到别的工作。

        16
  •  3
  •   Eric H.    15 年前

    妓女和吹?

        17
  •  2
  •   David Montgomery    15 年前

    在他们的软件项目的结果中给他们一个财政利益怎么样?例如,企业利润分享。

    也就是说,热情的开发人员是那种在业余时间回家写软件的人。

        18
  •  2
  •   GraemeF    15 年前

    参加一个软件开发会议,用一个好的、鼓舞人心的演讲者,会有很大的不同。

        19
  •  2
  •   Quinn Taylor    15 年前

    阅读“ Dynamics of Software Development “吉姆·麦卡锡。说真的,几乎整本书都在讨论这个问题和相关的问题。

        20
  •  2
  •   jheppinstall    15 年前

    尽管我同意要对编程产生热情并不容易(甚至不可能),但我认为保持热情的开发人员对他们的工作充满热情是可能的。即使是最热情的程序员开发人员,如果放在一个停滞的工作环境中,也可能会幻灭。

    那么我们能做什么呢?

    • 为个人发展提供充分的机会,给学习新事物的自由。让开发人员在他们参加的课程和他们希望参加的会议中有一些选择。
    • 玩具-不是传统意义上的,而是能够使用最新技术
    • 提供一个好的工作场所。它不一定是谷歌,但它必须是你想花时间的地方。
    • 当然,金钱是有帮助的。不是说一家公司可以为热情的员工支付报酬,而是人们需要为他们的努力感到适当的回报。

    我发现,在一个支持敏捷开发的组织中工作,对于构建热情的团队有许多正确的品质。

        21
  •  2
  •   David Thornley    15 年前

    如果他们根本不喜欢软件开发,那你就什么也做不了。

    如果他们很热情,那就太好了,你需要避免压制他们。在这些答案中还有一些很好的建议。

    如果他们曾经是热情的,并且已经击败了他们,你很可能会通过给他们合理的挑战,保护他们不受管理不善的影响,并且通常把他们当作有价值和受人尊敬的人来对待来获得好的结果。

        22
  •  2
  •   user151323    15 年前

    如果您有一个满是有能力的开发人员的房间,可以做些什么来鼓励这些开发人员对软件和软件开发变得兴奋和热情

    正确的问题实际上是“可以做些什么来鼓励那些开发人员对软件和软件开发变得兴奋和热情” 在我们公司 “。

    其实很简单。答案从来都不是秘密。只是没人听。

    非常简单的元素:

    • 让那些热情的开发人员和其他热情的人一起工作。把那些不在乎的人从团队中除掉。否则,他们会像病态细胞一样,对其他团队成员产生冷漠和抑郁。

    • 致力于开发优质专业的产品

    • 建立专业有效的流程

    • 信任和尊重他人。重视他们的知识。尊重他们的意见。实际上,这是一个更大战略的一部分:让你的开发人员能够做出改变,让他们看到他们真的可以影响和改变事情。

    • 让他们专业成长,让他们看到这种成长是你所欣赏和需要的。

    现在什么都没用。

    • 给他们很多钱。开发人员也是人类(大多数情况下),他们也有自己的账单要支付。

    • 拒绝他们的倡议、建议和改进建议。告诉他们每次他们想到什么,他们试图引入变革,使他们成为公司中一个不受欢迎的外来因素。

    • 有低质量的产品,并没有兴趣使它更好。黑客攻击、复制/粘贴代码、累积技术债务、每次发布后都会出现问题,这并不能激励开发人员。

    • 发展不畅,过程混乱。任务、项目和小决定每隔几天就采取一种新的方式,最终会消除任何人参与其中的欲望。由于不可预测的工作负载和功能集而导致日程安排失败,它们都会走下坡路。总有一天咖啡用完了,他们中的一些人就可以搬到别处去了。

    • 有一个枯燥乏味的社会环境。没有人可以交谈分享自己兴趣的开发者最终会感到无聊。不是每个人都对税收、足球和幼儿园问题感兴趣,因为这是社交聚会的唯一话题。

        23
  •  1
  •   Paul Creasey    15 年前

    我倾向于说 没有什么 像其他人一样,我必须承认,真正的激情不是你能创造的,它要么存在,要么不存在,不管你能做什么。

    得分高 Joel's test 是个很好的开始,

        24
  •  1
  •   HandyGandy    15 年前

    解雇所有的博士,雇佣聪明的经理,他们最大限度地提高软件实际完成和正常工作的机会。

        25
  •  1
  •   Matthew Whited    15 年前

    一个了解计算机并能在技术对话中保持自己的管理团队是一个非常有用的特性。不要试图通过炒作、倾向和流行语来销售热情的开发人员。

        26
  •  1
  •   skyflyer    15 年前

    集合 明确和稳定的目标 准确传达目标 对团队或人员。然后只是 让路 让开发人员做到这一点。

    不过,不要离开发人员太远,您需要解决这些问题,如免费食品、购买高档办公设备和其他开发人员不关心但对提高生产力和为开发团队增加额外津贴有用的琐碎事情。

        27
  •  1
  •   JB King    14 年前

    Dan Pink 注意3件事,如果工作需要创造力,可以激励人们。 RSA Animate - Drive: The surprising truth about what motivates us 是关于这些的10分钟视频,但以下是3件事:

    自主性——让团队控制进度,并授权他们拥有自己的工作。

    精通——他们在开发构建优秀软件的技巧方面有多出色。

    目的-他们为什么要制作这个软件?它将有什么巨大的好处?

    关于这方面的一些其他来源: