“10倍工程師”:刻板印象和研究 - jasoncrawford
今天我打算寫一些關於別的東西,但看起來Twitter上的每個人都在談論“10x工程師”(10倍工程師)。
有10倍的工程師嗎?無論如何,這個詞甚至意味著什麼呢?
這個話題引發了人們強烈的情緒反應,因為它涉及深刻的意識形態話題:一些人是否比其他人更有才華,為什麼會這樣(以及它是固有的還是可變的),以及我們應該如何對待人們。
因此,社交媒體上的激烈爭吵:一方面,人們說10x是一個神話,它都是基於刻板印象,無論如何不是更重要的事情,比如你是否可以寫文件或指導其他工程師或只是做個好人嗎?另一方面,人們不以為然,說當然有10倍的工程師,任何不承認這個明顯事實的人都是被社會正義宣傳所矇蔽,或者是一個不想承認自己的自卑的失敗者。
讓我們試著變得真實。首先,讓我們進行實證研究。
對該研究有何瞭解
這個概念的最佳解釋及其基礎是Steve McConnell 撰寫的文章“ 開發人員和團隊中的生產力變化:10x的起源 ”。以下是關於“10x工程師”的關鍵知識:
- 10x是指最佳和最差開發者之間的差異,而不是最佳和平均之間差異,這有很大的不同。在我看來,更容易相信最好的開發人員比平均水平高出3倍,而最差的開發人員的生產力要低3倍。這可以讓你達到10倍的整體差價。(請注意,因此談論“0.5x工程師”沒有任何意義,因為根據定義,最差的開發人員是1x。)
也許我們應該重新定義“x”為平均值,稱為“3x工程師”中最好的,並結束整個辯論? - 10x概念基於研究,但研究並不完美。上面連結中的McConnell描述了已經完成的研究(如果你想深入研究,請參閱此批評和McConnell的反駁))。有理由批評這些研究及其與今天的相關性:樣本量相對較小,並且它們並不總是得到很好的控制。其中一些是在幾十年前(第一次是1968年)完成的,當時計算機,程式語言和開發任務有很大不同。他們有時使用生產力的可疑度量,例如每天的程式碼行,但是他們也使用好的措施,比如完成時間,並且在某些情況下,程式碼行被認為是負面的(對於給定的任務,更少的行被認為是會更好)。
總體而言,我認為有明顯的證據表明,個人之間的生產力差異很大(而且稍微不同)。 - 10倍是粗略的平均值。不同的研究和測量發現不同的範圍,通常在5x和25x之間。這與剛剛討論的研究的侷限性相結合意味著我們不能說“大致數量級”。“10x”不準確; 它只是一種緊湊的方式來記住生產力的差異存在並且很大。
- 這些研究只比較了實際完成任務的開發人員之間的差異。他們的數字沒有考慮到甚至沒有完成的人(在一些研究中約為10%)。它們也不能考慮名義上已經完成的軟體的實際成本,但是它是如此錯誤,不穩定或難以維護,必須由其他人重寫。而這甚至沒有提到影響銷售和為公司虧錢的錯誤的成本,甚至沒有提到生命危險。但是,所有這些因素只會強調基本點。
- 10倍的數字與工程生產率的具體衡量標準差不多。它並非旨在完全捕獲工程師對組織的價值,也不能用於此目的。也就是說,這些仍然是有意義和重要的措施。
- 據我所知,這些研究沒有解決差異的原因。McConnell的調查至少沒有解決重要的問題,例如:個人的生產力水平是否隨時間穩定?它是否因環境而異,工作環境對生產力的影響程度如何?隨著特定時刻的運氣而隨機變化的嗎?它會隨著時間而增長嗎?可以學習或教導嗎?(他說,最初的1968年研究“發現程式設計師的經驗和程式碼質量或生產力之間沒有任何關係”,但這並不意味著生產力不會隨著時間的推移而增長,只是它不一定會這樣做。 )
確定性是什麼?
以下是我的想法不僅基於研究,而且基於我自己的軼事經驗和個人世界觀:
- 生產力的差異是真實的、大的、重要的,並且可能被低估。就是差異不是“十倍”,那麼它也已經重要了。我相信這部分是因為研究,但部分原因是這種現象比軟體更廣泛。麥康奈爾本人指出這一點,引用諾姆奧古斯丁的一項研究,“發現在各種職業 - 寫作,足球,發明,警察工作和其他職業 - 前20%的人產生了約50%的產出,輸出是否是落地作品,專利,解決案例或軟體。“
- 工作環境很重要。在現實世界中,重要的生產力型別受工作環境的制約。工程師是否明確了目標和優先事項?他們投入進去了?他們有動力嗎?他們相互信任,還有他們的管理?他們可以集中注意力嗎?他們隨機參加會議嗎?還是與生產火災作鬥爭?他們有良好的基礎設施和工具嗎?等等。
- 生產力是固有特徵和後天技能的結合。也就是說,可以部分地學習它。獲得的技能包括從特定除錯工具到一般思維模式和解決問題的一系列事物。固有的特徵與我們不能(或者還不知道如何)識別和教導的智力和其他思維模式有很大關係。
- 生產力與經驗沒有很強的相關性。有非常高效的初級工程師和非常平庸(或更糟糕)的高階工程師。因此,即使可以學習生產力,學習也不會自動發生,甚至在我們的行業中經常發生。生產技能很少被教授,而那些獨立學習它們的人也是那種善於開始的人。
結論
實際上關於10x辯論的內容是什麼?這個問題的情感影響是它對我們如何僱傭、如何獎勵人們以及我們如何對待個人的影響。
以下是我的結論:
- 招聘很重要。努力吸引,發現和關閉最優秀的人才。
- 環境很重要。努力創造一個良好的工作環境,如果你看到生產力的一般問題,那可能是一個環境問題。
- 獎勵生產力。創造更多的人,賺得更多。
- 但是,不要認為生產力是個人固有的。在一個環境中非生產性的人可能在不同的專案或不同的團隊或公司中富有成效。在解僱個人之前診斷問題。
- 培養工程師的生產力技能。我還不知道這有多麼有效,但我認為我們作為一個行業甚至沒有在這裡嘗試(我把自己包括在內)。
- 生產力不能成為不良行為的藉口。這個應該不言而喻。
並且沒有特別的技巧可以“找到”10x工程師。他們不是仙女或妖精,你不能透過終端的顏色,鍵盤上的磨損或任何其他任意刻板印象來識別它們。
相關文章
- MillwardBrown:營銷行業正避免性別刻板印象行業
- 人們對《DOOM》的誤解、偏見以及刻板印象OOM
- 消除NLP中的刻板印象:程式設計師之於男性=家政人員之於女性?程式設計師
- 你眼中的程式設計師 vs 程式設計師眼中的自己,是時候打破刻板印象了丨KubeCon 主題活動程式設計師
- 遊戲只屬於男生?質疑性別刻板印象並非小題大做遊戲
- ChatGPT確實會看人下菜!OpenAI官方報告揭示大模型的刻板印象ChatGPTOpenAI大模型
- 網路安全工程師和資訊保安工程師的區別!工程師
- 網路安全工程師和資訊保安工程師有什麼不同?工程師
- 全棧工程師和架構師的區別全棧工程師架構
- 什麼是SRE工程師?SRE工程師和運維有什麼區別?工程師運維
- [譯] 帶你瞭解什麼是工程師和工程師的影響力工程師
- [ 招聘 | 上海 ] 軟體工程師 / 全棧工程師 / 晶片設計工程師軟體工程工程師全棧晶片
- 要做軟體工程師,而不是前端工程師軟體工程工程師前端
- PHP工程師PHP工程師
- 全棧工程師的定義和價值全棧工程師
- springCloud/印象SpringGCCloud
- 網路工程師和Linux運維工程師有什麼區別?學哪個比較好?工程師Linux運維
- 我們和優秀工程師的差距在哪兒工程師
- [上海 -- EDA]招聘晶片設計工程師 | 全棧工程師 | 軟體工程師 // 年薪30W+起晶片工程師全棧軟體工程
- aigc文生工程師AIGC工程師
- 為什麼科學需要更多的研究型軟體工程師? - nature軟體工程工程師
- [上海&EDA]持續招聘晶片設計工程師 | 全棧工程師 | 軟體工程師 | 嵌入式軟體工程師 // 年薪30W+起晶片工程師全棧軟體工程
- 【招聘】前端軟體工程師、高階前端軟體工程師前端軟體工程工程師
- 【上海】Strikingly (YC W13) 招聘 Golang 工程師 & Devops 工程師Golang工程師dev
- 程式設計師的定位:『應用型工程師』或『科研型工程師』程式設計師工程師
- 嵌入式工程師的薪資和發展前景工程師
- 【前端工程師手冊】學習迴流和重繪(reflow和repaint)前端工程師AI
- 如何從軟體工程師轉型到人工智慧工程師?軟體工程工程師人工智慧
- 前端工程師要做什麼?前端工程師需要什麼根本技能?前端工程師
- 【上海】Strikingly (YC W13) 招聘 Golang 工程師 & Devops 工程師Golang工程師dev
- [上海·漕河涇] 邊鋒招聘Go架構師和Go工程師(共6人)Go架構工程師
- 後臺前端工程師前端工程師
- 海外IT工程師淺談工程師
- 圖集:盲人 IT 工程師工程師
- 工程師基本常識工程師
- Golang研發工程師Golang工程師
- 中級工程師之路工程師
- Java工程師手冊Java工程師