幻影般的优越感:你是一个优秀的程序员吗?
你是一个优秀的程序员吗?作为一名软件开发人员,你是否高于平均水平?我几乎可以断定你的答案是:那必须的啊!
大多数的程序员都有这种感觉。但是,如果多数程序员认为他们高于平均水平,那么他们中的许多人都错了……
众所周知,程序员以其工作为荣。一些开发人员甚至认为编写优雅的代码是一种艺术形式,因此,他们称自己为“软件工匠”。不得不说,在任何职业中,想要完成出色工作的愿望都是正常的。
在软件开发的过程中,程序员经常会接触到同事编写的片段代码。这时候好胜心就作祟了,如果每个人都能看到你的代码,你自然而然的就想要把自己的代码更加完善,更加NB!
所以现在我问你:你是一个优秀的程序员吗?作为一名软件开发人员,你是否高于平均水平?或许你在前20%,甚至前10%?
我几乎可以想象到你的回答是:那当然,我肯定高于平均水平。大多数程序员都深信不疑,相信自己肯定是属于王者那一挂人才。但是,如果大多数程序员认为他们高于平均水平,那么他们中的许多人就错了……
虚幻的优越感
这种 “高于平均水平”的感觉,是一种普遍现象,被称为错觉优越感,社会心理学家对此进行了研究。以下是来自维基百科的定义:
“虚幻优越感是一种认知偏见,相对于他人,他们常常高估自己的积极一面的品质和能力,低估自己的消极一面的品质。”
以下是该领域研究人员观察到的一些具体例子:
“斯坦福大学87%的MBA学生认为自己的学习成绩高于平均值。”
“在驾驶技能方面,93%的美国受访者表示自己排在前50%。”
MBA学生和司机只是两个例子,但在不同的环境中也观察到了同样的现象。如果你有软件开发经验,你可能会会赞同这种看法——程序员也并不例外。
但是,这种虚幻的优越感有什么错呢?有自尊当然是件好事,一个好的专业人员应该对自己处理任务的能力有信心,没有人愿意和他们认为没有安全感的人一起工作。
虚幻优越感的问题在于,他们会低估了他人的能力。当我们期望人们以团队的形式工作时,这就很危险了,因为团队中有人认为他比同事更能担此大任。
尊重和认可
如何对付这种优越感的幻觉呢?如何让团队中的程序员互相尊重,让他们认可别人的经验和技能并且钦佩他们的同行?
我认为,尊重和认可的关键是共同努力,让他们越接近越好。在这种情况下,变通的方式比传统的方式提供更多的合作机会。
也许最好的合作形式是结对编程。在这种情况下,软件开发人员结伴工作,一起编写代码。几项研究表明,结对编程对系统的质量有积极的影响。但是,在我看来,另一个重要的好处是能够加强团队之中,程序员们之间的联系。
至于Scrum,每天的站立会议是每个人了解团队其他成员进展的机会。即使程序员单独处理自己的那部分任务,他也能够跟踪整个系统的完成进度。换句话说,我们可以说Scrum促进了整体之内的契合,让每个团队成员都能够感受或者意识到其他人所面临的挑战。
真正的优势
但是当你真的很优秀的时候,会发生什么呢?当你成为团队中最有经验的开发人员,或者当你是唯一具有特定技能的开发人员时,你应该如何表现?当你的团队中有程序员写的程序极其糟糕,又会发生什么?
我相信,当你是团队中最有经验的头儿时,殊荣如约而至。正如蜘蛛侠的名言所说:“能力越大,责任越大”。
在一个团队之中,成员之间的真正合作中,你出色的能力将很快得到认可和尊重。至少在你有特殊技能的领域,你就可以扮演一个“领导”角色。
承担这一技术领导的角色意味着:
但是你要永远记住,即使你是“优秀的”那个,你也可以向别人学习。正如犹太古籍《祖先的伦理》所写:
“睿智之人,向别人学习。”
本着这种精神,我很乐意在评论中听取你们的意见。谢谢!
幻影般的优越感:你是一个优秀的程序员吗?