如果你有一个充满能力的开发人员的房间,可以做些什么来鼓励那些开发人员对软件和软件开发感到兴奋和热情?
没有任何噱头,但真正的举措是创造一个人们想要在软件中工作的环境,而不仅仅是因为公司是一个整体工作的好公司.
在我看来,绝对的,#1,最重要的事情是激励开发人员对他们的工作充满热情,这是对他们产品的所有权感.所有团队建设练习,阅读小组等都很好,但如果开发人员没有主人翁意识,最终效果不佳.
这是一个快速的,在我认为重要的事情的袖口清单,以确保这种情况:
开发人员在系统的未来设计中拥有真实和诚实的利益.始终存在来自开发团队之外的需求,但是开发人员应该在发现这些需求时得到代表,并且能够为您正在处理的工作的未来状态提供真正的输入.
开发人员提出的要求或对您的解决方案的更改应该给予发言权.当然,需要找到平衡,但是太多的公司没有适当的机制来允许纯粹的以开发为中心的请求通过.这些可以是产品增强,构建单元测试或简单的重构,但它们对于产品质量和为开发人员提供项目利益至关重要.
开发人员应该与用户联系.一个开发人员就像地下室里的人一样对待生产代码,他们永远不会对产品或发展自己的技能采取非常热情的方法.
拥抱新技术,即使它仅用于PoC或技术可以做的原型.世界上没有任何开发人员对制作样板代码感到兴奋,而且他们永远都不会.
让开发团队拥有自己的流程.开发方法从一开始就会发布,并且会使开发团队失去动力,开发团队现在需要处理规划会议和瀑布式开发的额外负担.要求存在流程,但在出现问题之前,请将手放在具体位置.
"只是事情的运作方式"绝不是破坏过程的借口.如果开发人员对他们需要遵循的流程有合理的关注,他们需要一个诚实的机会来反对它.作为经理,你可以说最糟糕的事情之一就是"这就是副总裁/执行官/首席执行官/上帝想要它的方式,所以我们需要遵循它".您需要支持您的开发人员关注,或者失败,允许他们与相关人员直接互动.如果你作为一名经理被视为行政人员的sockpuppet,那么好运再次激励开发人员.
保护您的开发人员免受所有政治的影响.让他们做到最好,开发软件. 没有什么可以杀死一个富有成效的团队,就像不得不在内部政治中争吵一样.
这个众所周知的对话说得最好:
彼得吉本斯:鲍勃,我现在有八个不同的老板.
Bob Slydell:请原谅?
彼得吉本斯:八位老板.
Bob Slydell:八个?
彼得吉本斯:八,鲍勃.所以这意味着当我犯错时,我会有八个不同的人过来告诉我这件事.这是我唯一真正的动机,不是被麻烦,而是担心失去工作.但是你知道,鲍勃,这只会让某人努力工作,不会被解雇.
雇用合适的人
在面试过程中,提出问题,让您看到他们对工艺的热情.
一些例子,他们:
阅读软件书籍或博客,收听播客?
在家玩新语言/图书馆?
有助于开源项目?
一旦你有了好人,就会让他们远离他们.有适量的流程,不要强迫不必要的标准化,倾听问题,诚实地说明事情正在发生的原因.
阅读DeMarco和Lister的Peopleware.
我还没有遇到一位能够开发出优秀软件的有能力的开发人员.诀窍是保持自己的方式,而不是破坏自然的热情.
在乔尔测试是一个良好的开端.
可以做些什么来鼓励那些开发人员对软件和软件开发感到兴奋和热情?
没有.
对软件开发的热情来自内部,不能从零创建.提供现有的激情很容易 - 资源,培训,以及对管理层的热情的明显欣赏都需要.
唯一的例外可能是以身作则.如果你很兴奋,其他人可能会跟随.
更新:正如其他答案中所说的那样,预先雇用员工要好得多.我要通过十位优秀的程序员,他们只想为一位优秀的程序员提供薪水,这位程序员在业余时间编码以获得乐趣.
另一个更新:这个答案一直在上升/下降,所以让我澄清一下.OP的措辞专门询问如何让现有团队对"软件开发"感到兴奋.我的观点是,如果他们对自己选择的职业不感兴趣,那么雇主就无法产生兴趣.一个无私的,没有动力的团队将把最迷人的项目搞得一团糟.相比之下,一个积极的专业团队喜欢他们的工作,可以在那里制作最好的计算器程序,并享受它的每一分钟.
有一个有趣的,具有挑战性和有利可图的问题需要解决,所有开发人员都会在结果中占有一席之地.如果没有,只要支付清算明确,你就会有一个满是开发人员的房间.
我不得不同意Pascal的评论,但我不打算这样开始.
总的来说,已经证明,为开发人员提供一个让他们喜欢自己工作的环境的最佳方法之一就是给他们自由.但是,你在这里寻找不同的路线,你正试图寻找"热情"的开发者.
诚实地说,没有直接联系到"有能力"和"热情".有数百名开发人员能够成为程序员,并且有很多优秀的开发人员.但他们中的许多人并不想成为充满激情的开发者.
要创建一个充满激情的开发人员团队,您必须从招聘流程和HIRE热情的开发人员开始,而不是尝试"创建"他们.