開發者中的領導與管理(譯文),推我上頭條
在討論軟體工程的時候,我們會經常使用領導和管理等詞彙。雖然它們可能聽起來很相似,但它們其實是完全不同的,且常常(但並不總是)由不同的人執行。在本文中,我將仔細研究這兩個術語,並解釋為什麼這個術語比其他的術語更難理解。
領導者的定義
您可以嘗試按以下方式定義領導:
以激勵和鼓舞他人,採取行動,實現積極的目標,同時也維護、培養團隊和個人的利益。
我眼中的領導者
領導者是有動機性的激發、鼓勵,以調動人的工作熱情,我認為這些是很好的一個價值觀,這也是考量作為領導者(軟體行業是不是這樣的呢?)的關鍵標準。維護團隊和個人的利益的方式,是怎樣保持領導者地位(團隊完整)的標誌,培養未來的領導者並幫助員工蓬勃發展。
在軟體開發行業的背景下,想要成為領導者,一些典型行為:
- 承擔一項複雜的工作(維護)
- 教學/指導q無經驗的同事(培養)
- 培養團隊的積極精神(激勵)
- 以你的品行和工作質量作為案例鼓舞他人(鼓舞)
這只是個別例子,我想你還可以找到更多的例子。
一般來說,軟體開發團隊裡的領導者,是不具有官方行政管理責任的。有時,他們甚至沒有花哨的頭銜。在任何人正式稱你為領導者之前,你就可以領導了。
一個優秀的領導者可以真正地提高團隊的水平,不僅讓工作更快,質量更高,而且會對在一起協同工作的人,留下持久積極性的影響。
管理者的定義
什麼是管理呢?我們來看谷歌字典的定義:
處理或控制事物或人的過程。
雖然領導者涉及到間接性控制處理,而管理者則是直接控制人。
管理者似乎常常擁有官方頭銜,並且通常負有官方行政管理責任。
在軟體開發行業的背景下,管理者經常處理以下事情:
- 為團隊選擇將要處理的任務
- 組織工作(即使在大多數敏捷方法中,團隊也應該那樣做)
- 提拔和僱用人員
- 跟蹤審查進度等
這些事情都很重要,有能力的人管好這些事情,同樣也很重要。但是,實際上並不是很多人想象的那樣,他們可以影響最終產品的質量。最後,交付工作由團隊負責,雖然可以管理團隊,但是,想要做到卓越成效,還是需要優秀的領導者。
成為一名優秀的領導者
我上述的領導者 - 任何人都可以成為領導者,只要他們做了所需要的(激勵,鼓舞,培養和維護)。您就可以成為一個領導:
專案經理 - 您已經是經理,擁有“管理權”,您可以用它來維護好自己的團隊,指導他們瞭解實際業務,並營造一個良好的工作氛圍。
一個新的開發人員–說不定你知道團隊中別人不熟悉的技術?你應該幫助別人,並快速學習你的技術。當有人需要你的幫助時,你是不是永遠不會說不?僕人式的領導其實是非常有影響力的。
一個頭銜為“首席開發者”的人 - 不要辜負你的頭銜。幫助他人,解決複雜的工作。邀請他人與你結對程式設計,並分享您的知識和經驗,巧妙而尊重地提供反饋。
明白了吧。這不是一個人吶喊 - 我是第一個。事實恰好相反。這是關於團隊併為團隊服務的。
讓我們看一下更具體的,更難做領導者的另一面。
如何激勵?
激勵人們是一個引人入勝的話題。我寫了一篇題為“富有激情和幸福地軟體團隊的祕密”的文章,如果你想了解細節,請繼續閱讀。短版本在這裡。
激勵就是給他們做三件事:
自治 - 能夠選擇他們自己的路線,實現目標
精熟 - 有強烈願望,把某些事情做地精煉
目標 - 把精力集中在某些重要的事情上
當然,如果你在令人崩潰的環境中工作,也很難有所作為。所以創造一個良好積極的環境,這個關鍵要素也是很重要的。
如何激勵?
激勵人們最好辦法是以身作則。主要關鍵要素:
- 自己所做的工作,要有一定的可信賴度;
- 堅持你的原則和價值觀;
- 保持積極的態度,足智多謀的一個人,尤其是在艱難時期;
- 去做超過職責本身的事情
對於激勵,很難給出一個簡單的公式,但這也將是你的優勢。以專業精神為榜樣,使得其他人互相影響,做一個具有專業精神的人。
如何培養?
領導者常常被忽略的一個方面是培養人。其實幫助他人成長,對領導者的能力,會產生永續性的影響。例子:
- 讓他們學習你的經驗;
- 提供有價值的,或者是負面的反饋。畢竟提供言行得體地、實際有效的負面反饋本身就非常困難;
- 發現潛在的人員,幫助他們看到自己的長處;
- 培養他們成為未來的領導者。
這不是一場零和博弈。幫助他人成長,只會讓你的工作與生活更美好。誰不想與一支出色的團隊工作?停下無意義的糾結,你得讓他們令人驚奇!
我們需要管理層嗎?
對於領導層的熱議,我可能會給你們留下不需要管理者的印象。我們需要管理者運營公司,但是我們不需要管理者解決開發問題。他們可以幫助解決問題、把控團隊,但交付質量完全應由交付團隊來負責的。
最好的解決方案是,基於領導者和管理者之間的信任關係,努力組建一支可靠的交付團隊,。管理者控制必須控制的東西,領導者(可能是整個團隊)指揮交付團隊。
進一步閱讀
有關領導層的問題,我建議看的書單