techlead

Tech Lead Toolbox

建设优秀工程师文化的 9 种方法

原文链接:https://stormpath.com/blog/how-to-build-engineering-culture

如果你想拥有一个成功的技术创业公司,你需要的不仅仅是一个伟大的公司文化,你需要一个伟大的工程师文化。优秀的文化为您提供了巨大的优势,可以招募优秀人才,留住这些人,并巧妙地指导他们的行为来推动业务发展。

与炒作相反,文化不是乒乓球桌、垒球联赛和免费午餐。相反,文化是一群人自我指导的隐含规则,指导方针和价值观。正是同伴压力以强有力的方式塑造行为。简单地将一堆核心价值放在墙上的某个地方是不够的。文化是一种需要持续照顾和喂养的生物。

虽然根据团队的战略,每种文化都应该有所不同,但对于工程而言,最好的团队中有一些共同的元素。

1.鼓励公开辩论

“对我来说很重要的是,我鼓励去发表意见,并且我正在倾听” ——Jose@Stormpath

科技创业公司很难。大多数时候,你正在构建一些没有人建立或开创新方法或新市场的东西。路径永远不会清晰,没有人能够得到所有答案。然而,您的工程团队是一群非常聪明的人,他们致力于加入公司并坚持过山车的愿景。

它们的价值超出了调用代码的能力;他们可以为技术设计、流程、架构、功能等做出巨大贡献。在某些情况下,他们甚至可能对销售和营销有很好的想法。通过鼓励人们说出来,你不仅可以从他们的洞察力中获益,而且还可以让他们感受到有影响力和有价值的感受。那很厉害。它推动了更好的技术决策。它有助于识别隐藏的风险。它有助于知识共享。它推动了忠诚度。

但是,并非团队中的每个人都会在激烈的辩论中自然而然地说话,或者自己与高级经理发生矛盾。你的团队领导有责任为更多的人保留 “空间”。注意表明他们对某个主题有意见的肢体语言。或者可以暂停辩论,并询问那些没有声音的人,他们是否有任何需要补充的内容。也许,您要求在会议之前或之后提供意见,以便每个人都有时间停下来,并将他们的想法汇总到一封电子邮件中。尝试一下,因为一个有效的辩论文化包括每个人,而不仅仅是大声的外向者。

2.建立对管理决策的承诺

“一旦做出决定,我们就会一起搬家。不回头。” —— Mario@Stormpath

辩论文化有一个单一的目的 —— 做出更好的决定。然而,通过共识做出正确的决定非常困难。拥有强大工程文化的强大团队,对此持有一点点独裁。一个人在辩论后获得最终决定权。首席执行官、首席技术官、架构师、经理、大师,无论如何 —— 团队中的这位领导者,不仅需要信心和技巧来打开和管理真正的辩论,而且他们还需要权威和信心来在正确的点上停止辩论,并做出坚定的决定。即使这是一个不受欢迎的决定。在做出任何决定之后,更难的仍然是对所做出的决定的承诺感,因为对于一个团队来说,没有比在决定之后 “我告诉过你” 更糟糕的事情。

实现这种承诺水平很难。它首先源于对领导层的信任。为了建立这种信任,请确保您正在倾听,并明确了解所提供的所有信息和意见。一个简单的测试是你是否可以令人信服地重播争论。在做出决定之后,不要只宣布决定,解释你为何采取这条道路。你可能是对的,你可能错了,但如果团队能理解 “为什么”,那么他们就可以做出承诺。

3.谦卑

“这里的每个人都非常好。团队氛围很好,人们对新想法持开放态度” —— Jeff@Stormpath

为了使公开辩论真正在团队中发挥作用,你需要谦虚的人。谦虚的人更专注于找到正确的答案,而不是赢得争论。谦虚的人有想法和意见,但知道他们并不总是正确的。谦虚的人为他人腾出空间,不同意他们,仍然恭敬地参与其中。只要他们觉得他们的声音被听到,谦卑的人就会承诺反对他们的意见。谦虚的人很容易教。谦虚的人很容易合作 - 他们是包容性的,分享信用,并倾向于接受新的想法。

雇佣谦卑更多的是艺术形式而非科学。留意他们如何谈论他们以前的团队,他们如何描述自己的优势和劣势,以及他们在面试过程中如何对待您和您的团队。他们分享信用吗?怪?他们在谈话中为其他人腾出空间吗?他们如何回应一个愚蠢的问题?被反驳?

4.聘请聪明的人完成任务

“我们不是在这里鬼混。这是一支由专业人士组成的团队” —— Tom@Stormpath

如果你是一家科技创业公司,你不仅仅是在预算上,而且你的时间非常有限。所以,你需要那些值得每一分钱,并且会快速行动的人 —— 聪明的人完成任务。引用乔尔·斯波尔斯基的话说,“聪明但不做事的人经常拥有博士学位,并且在没有人听他们的大公司工作,因为他们完全不切实际。” 而 “那些把事情做好但不聪明的人会愚蠢的事情,似乎没有考虑过它们,其他人将不得不在以后清理他们的烂摊子。这使他们成为公司的净负债,因为他们不仅没有做出贡献,而且还吸收了好人的时间。”

如果你认为招聘谦卑很难,那就更难了。您的工具包括面试问题、编程测试和参考检查。

正确的面试问题是评估智慧的好方法。用正确或错误的答案避开问题。即使是最聪明的候选人,也可能在面试的热度中忘记一些模糊的定理。相反,提出问题将揭示人们如何处理复杂问题而没有明确答案。您可以采取务实的技术方法(如我们),“您将如何构建照片共享应用程序” 或更加奇特的方法(如微软) “中国有多少茶?” 请他们大声思考。他们可以围绕这个问题包围吗?找一个接近的角度?问你正确的问题?他们的解决方案是否切实可行?他们的答案是否清晰且内部一致?

要确定他们是否可以完成任务,请给他们一个带回家的编程练习。一个有点挑战性的,有十几个要求,并模仿你的一般环境。他们能够完成吗?他们满足了所有要求吗?他们认真对待了吗?这些都很容易检查。更重要的是,他们是如何组织他们的项目的?他们是否记录并测试了他们的代码?你能按照他们的做法去做吗?他们是否采用了适当的设计模式?设计有什么好处吗?

5.推动客户同理心进入团队

“我知道谁将使用我们的产品,以及他们试图通过它实现的目标。知道有人会使用我的代码,我感到压力让它变得很棒。” —— Robert@Stormpath

如果您的工程师了解您的客户以及他们想要实现的目标,他们就会成为一个产品开发人员团队。当用户体验(UX)成为一个更深层次的辩论而不仅仅是按钮颜色时,它变成了文化,并通过更少的会议和管理带来更好的产品开发。

那你怎么去那里?这是一笔很大的投资,而且这种方法取决于您的业务。在 Stormpath,我们让工程师进行支持轮班,以便他们与客户进行一对一的互动,了解人们如何使用产品,他们正在尝试做什么,以及他们遇到问题的地方。我们鼓励他们作为最终用户连接到 API。它耗费了他们的开发时间,但这是我们认为自己付出的投资。什么对你有意义?

6.鼓励探索新技术

“只有十六种颜色才能看世界的艺术家,才能创造十六种颜色的艺术” —— Les@Stormpath

工程师解决问题。要做到这一点,最优秀的工程师总是在寻找新的技能和技术来添加到他们的工具箱中,拥抱它并促进它。通过让新的技术和方法进入您的组织,您不仅可以激发新的挑战,还可以强迫他们以新的方式思考。考虑 NoSQL,这是一种完全不同且强大的数据结构思维方式。您的特定项目可能不会最终使用它,但只需接触它,您的团队的技能就会增长,并可能为您的下一个问题提出一种新颖的解决方案。

在鼓励探索和为新技术采用新技术之间存在一条界线 - 这可能会导致很多问题。保持在该方面的右侧的方法是鼓励您的团队在他们认为可以对您的工作产生有意义的影响时将新技术带到谈判桌上。让会员在午餐时分享新技术并学习。如果它看起来有潜在的价值,那么就让时间让团队弄脏并测试技术 - 也许是通过尖峰,概念证明,甚至内部黑客马拉松。

7.改善!推动持续流程改进

“我喜欢在我们需要时随时改进技术,工艺和技术的自由” —— Elder@Stormpath

有一个过程,任何过程。让它变得强大和清晰。重或轻,重复它,以适应您的战略和您的团队。它将确保您的团队明确指示如何做以及如何做。这只是良好的工程管理,但要建立一个伟大的工程文化,这个过程应该由工程团队本身而不是管理团队拥有和管理。

工程师是日复一日地处理这个过程的人。他们知道,比任何人都更好,它在哪里工作,哪里不工作。如果您的文化已经促进了公开辩论并且有明确的目标,那么这种所有权可以创造奇迹。

每两周左右,每个人都会遇到关于如何改进流程的想法。不知道是个坏主意。无论多么疯狂,都要试一下两周并重新评估。您的流程将会起伏不定,但始终与您公司最重要的事情保持一致。这种管理方式最终成为丰田制造业的支柱,并且在 Stormpath 也为我们提供了良好的服务。如果您想了解更多信息,可以查看我们关于 Agile Kanban 流程的帖子

8.尊重他们的时间

“我觉得你尊重我作为专业人士的时间” —— Pablo@Stormpath

人们希望受到尊重。如果你给予他们尊重,你将获得尊重,以及办公室中的忠诚度和低摩擦力。尊重您的工程师很容易:尊重他们的专业知识,更重要的是尊重他们的时间。

您可以通过两种方式快速制度化尊重。从这两个开始,你会看到尊重迅速蔓延。

强制您的每日站立会议每次都准时开始。预定上午 10 点?从上午 10 点开始,不是一分钟后,无论谁迟到,都表示尊重准时出现的其他人。即使经理或总建筑师迟到,也要迫使他们按时开始,明确表示没有人可以免税。

在下一个大工程截止日期,每个人都需要工作疯狂的时间,问他们,不要告诉他们,要迟到并解释为什么这对公司很重要。对您需要的内容设定一个清晰而现实的期望,以便他们可以在推动期间规划他们的个人生活。确保它们尽可能舒适。一旦完成,尽你所能,尽量减少这些推动的频率,这样你就不会失去信任。

9.提供和接收定期反馈

“反馈,冠军的早餐” - Alex @ Stormpath

最好的工程师,希望通过提高他们的技能和他们努力的领域来发展。要做到这一点,他们需要明确,诚实和建设性的反馈。您提供反馈的频率越高,他们将拥有的数据点越多,他们可以更快地进行更改。反过来,收集他们的反馈,以便您可以提高自己,管理技能和公司。通过建立强大的双向反馈渠道,您将获得更好,更强大的工程师以及他们的信任和忠诚度。

建立定期反馈需要时间和纪律。一个季度对我们来说效果很好 - 通常足够可行,但不重复。对于每位工程师,至少花费一小时的准备时间,来思考您认为有价值且可操作的反馈。并要求他们花费尽可能多的时间准备给你反馈,并反思他们自己的表现。然后安排一小时的会议给予和接收。对于那些从未做过这种时间的团队而言,证明这种时间投资是合理的,特别是当所有工程师在短期限内感到资源不足时。但这是一项投资,为您和您的团队带来巨额长期支出。准备是关键,如果这对你来说是新的(如果不是!)。

结论

这九个步骤是建立伟大工程文化的有力方式,但它们只是基线。要建立一个真正卓越的文化,评估您的组织的核心战略,并找到使您的文化与该战略保持一致的方式,使您的工程团队真实可行。如果您投入时间和精力,您的文化将会开花,最终帮助您吸引,留住并指导管理最佳人才。