聊聊程序员的影响力

让我们来聊聊程序员的影响力。作为一名程序员,你是如何获得影响力的?什么是影响力,它的根源是什么,你该如何运用它或者怎样会失去它?它与管理者的权力和影响力有什么不同?

这个话题通常与那些迫切希望成为管理者以便获取更多信息和决策影响力的程序员有关。这是一个危险的信号,但糟糕的是,这种情况却很普遍。

如果出现这种情况,你需要做一些自我反省。你的公司是否为高级程序员提供参与领导和决策的机会?是否有一个与管理者并行的程序员职位轨道,至少和总监一个级别?他们之间是否平等互补?公司是否有为程序员量身定制的职业发展阶梯?对于非管理者来说,公司的决策过程是否太过神秘?你认为理所当然的东西,别人可能不这么想,所以一定要去问问他们的想法。

或许他们说的只是个人的想法。或许他们不相信你。或许他们只在管理者“独裁”的公司工作过。或许他们在很多公司工作过,还和你一样认为程序员可以拥有巨大的影响力,但其实这是彻头彻尾的谎言,以致于到最后希望彻底破灭。或许他们因为各种原因不习惯于掌握权力。

不管怎样,那些想要成为管理者以便能够长久利用权力的人,到最后一定不希望成为管理者。

那么什么是程序员的影响力?它是如何体现出来?

我不想重复讨论有关性别、种族和阶级的相关问题,我只是认为,从某种程度上讲,某些人掌握权力要比其他人更难。

创造的力量

行动是程序员的超级神力。我们在用笔记本电脑和自己的大脑创造事物!这太不可思议了!我们不必说服、忽悠或强迫他人为我们做事情,我们亲力亲为。

这看起来很浅显,但却很重要。创造是一切力量的源泉。除非我们同意,否则什么都不会发生。

Facebook的一张海报上写着“CODE WINS ARGUMENTS(代码胜于雄辩)”。这句话说得太过绝对了。不过,有多少次,一场又一场的技术争辩都是因为有人愿意动手去做而得到解决的?行动避免了争辩,行动是对理论最好的证明,行动就是力量。(当然,“做”并不仅仅是指“写代码”。)

此外,开发软件是一项创造性的活动,而大规模的开发协作就更是一项非常具有共通性的活动。作为一种创造性行为,当我们对自己的工作充满动力、灵感和热情时(与砍伐木材相比),才会成为更好的创造者。作为一种协作行为,当我们拥有高度信任感和社交凝聚力时,才会做得更好。

工程能力和判断力、自主性和目标感、社会信任感和合作行为,这些都是伟大工程的基础。每个人都有一两种他们感到最舒适的模式,我们可以将这些模式大致分为几种原型。

影响力原型

  • “选择极其困难且迫在眉睫的工作(也往往极度无聊)”。SOC2合规性、备份和恢复、可怕的重构、认证集成:只要能够推动业务发展,他们才不管这些工作无不无聊。如果你是这样的程序员,那么你将获得别人的尊重和感激。
  • “杀手锏调试器”。通常是工作时间最长或最初构建系统的老程序员。如果你对自己的历史和背景感到乐观,那么它们将成为你的一笔巨大的资产。实际上,人们倾向于高估这种人的不可或缺性,但我不鼓励这样做。
  • “专家”。如果你是某个方面的技术专家,那么你在自己的领域里将会产生巨大的影响。你应该在自己的领域内与时俱进,这样才能保持你的优势。

有些人持续提供输出,强大到令人感到费解,有时甚至会在多个方面同时取得进展。有些人长时间工作,有些人对如何最大限度地发挥影响力有着本能的反应。没有人想要惹恼这些人。他们的参与通常会加快一个项目的进度,或者让项目在终点线上挣扎。

并非所有的影响力都源于原始技术实力或产出,只是一小部分创意、协作、人际关系是占据优势的:

  • 有些人怀有好奇心,并且总能比其他人提早一步嗅到新事物的味道。他们似乎在玩弄一些毫无意义的东西,你很想骂他们,但他们却可能救你于灾难之中,所以你不得不学会珍惜他们的这种“玩物丧志”。
  • 有些人通过社交的方式来解决问题,比如交友、交换技能、互相帮忙等。不要低估了这种社交方式,它往往是为问题找到正确答案的最快途径。
  • 有些人非常懒惰,并且通过他们所谓的优雅的捷径来打击你。
  • 有些人是招募磁铁,这种人是值得重金聘请的,因为所有人都喜欢与他们共事。
  • 有些人擅长推动利益相关者达成共识。
  • 有些人擅长表达、讲故事或教育他人。
  • 有些人是人人都想要成为的榜样。
  • 有些人很会画饼,让每个人都心甘情愿照着大饼去做事。
  • 有些人将代码评审变成了教学艺术形式。
  • 有些人会让身边的每个人都更有成效和更有效率。有些人创造了无限的前进动力。有些人善于说不。

还有一些特殊的影响力是通过以下这些形式表现出来的。

  • 曾经做过管理者的程序员是非常珍贵的。他们懂得如何为初级程序员解释业务目标,并让他们深信不疑(在初级程序员看来,这些是纯粹的管理者所不具备的东西)。他们拥有强大的技术领导力,他们可以将项目分解为组件,让其他程序员能够赶在截止日期之前完成项目却不会让他们精疲力竭。
  • 有些程序员是怎么也甩不掉的顽疾,他们质疑和挑战每个系统和组织架构。但他们也可能是可以打磨成优秀人才的好苗子,只是需要强有力的领导把他们的能量引导到富有成效的对话和改进上,并防止他们影响整个团队。
  • 我们不要忘了轮班待命的程序员。如果你的公司有健康的轮班待命文化,那么产品所有权就会形成一种权力和道德权威——提出需求、推动变革、优先安排事项。轮班待命不应该是人人避之不及的东西,而应该是每个代码程序员应该肩负的荣誉勋章。(但它不应该让人感到痛苦不堪或影响他们的生活。)

这样的例子我可以说上一整天……工程包含了如此强大的角色和技能,所以我们有必要揭开影响力的面纱,并了解他人如何看待你的影响力。

大多数影响力的形式可归结为“影响和被影响”

只是会写代码是不够的。你可能拥有信誉度,但拥有它与使用它是不一样的。要将影响力转化为真实的力量,必须使用它,而使用它的最好方式是沟通。

藏在你脑子里的东西对其他人是没有影响力的,你必须把它们表达出来。

你可以通过多种方式实现这一目标:通过写作、小组谈话、公开招募盟友、说服权威人士、公开表达想法等等。

因为工程是一项创造性的活动,所以独裁主义实际上是非常脆弱和具有破坏性的。唯一可持续的权力形式是所谓的“软实力”,如影响力和激励能力,这就是为什么优秀的管理者喜欢使用软实力,而非常不情愿使用权力。如果你的领导经常强调他们的权威,那就是一种反模式。

如果你不发声,就无法发挥你的影响力。在他人面前说出真实想法可能也会把自己的弱点暴露出来,但有时候也不一定是这样。

这不是一个“零和游戏”

你们当中的大多数人拥有的潜能远远超出自己的想象,因为你们感觉不到它们的存在,或者意识不到自己在做什么。

管理者可能拥有硬实力和权威,但是有关技术交付的具体决策通常是由他们身边的程序员做出的。这些程序员都属于行动者,因为他们就是需要为这些决策后果提供支持的人。

权力倾向于流向管理者,因为他们了解更多信息。因此聘请了解这一点的管理者并借助它来向其他人行使权力就变得非常重要。

在健康的支配与臣服关系中,臣服一方通常拥有最终权力。同理,在健康的团队中,程序员实际上拥有最终权力。因为你有最终的否决权:你可以拒绝参与贡献。你通常可以另寻更好的下家,或许很多人都应该这样做。

当技术和管理发生冲突,谁会赢?理想情况下,他们需要一起努力为业务和人员寻找最佳的解决方案。在身处水深火热的团队中,他们两者之间反而能够保持紧密的联系。

选择你的战斗

如果你能够正确地培养和发挥自己的影响力,你就可以对构建的内容及其构建的方式有很多发言权。但你不可能对一切事情都有发言权,这不合逻辑。

你越是将影响力用在好的产出上,就会积累越多的影响力。但它是一种非常精确的工具,需要以精确的方式来运用。想象一下,在按摩时,按摩师整个人压在你的背上,而不是用他们的肘部或手掌来按压某个部位。过于宽泛的目标会分散你的注意力,并限制你的潜在影响力。

所以,要正确地运用你的注意力。

一旦你有了影响力,别忘了帮助别人提升影响力。注意那些被忽视的人,帮助他们提升他们的影响力。借出你的时间和信誉度,把那些让你变得强大的技能也教给需要它们的人。

聊聊程序员的影响力

相关推荐