本文的作者eliot horowitz是mongodb的創始人和技術總監。
在乙個科技公司裡,軟體技術經理用在程式設計上的時間應該不低於總工作時間的30%。無論是管理乙個團隊,還是乙個分部,還是整個公司,當技術經理用在程式設計上的時間低於30%時,他執行職責的能力就會發生嚴重退化。
我的這個斷言可能跟那些我看到的想成為團隊首領的軟體程式設計師們期望的情況完全相反。每次晉公升,程式設計師們都期待花在編碼上的時間會大幅度減少,當從「leader」爬到「經理」職位時,就應該徹底脫離編碼活動。而且,他們期望以一種「動口/眼不動手」的方式來保持對**庫的熟悉。再上級的領導就跟編碼完全沒關係了(如果有的話)。
大概一年前,當時我的時間被越來越多的其它事情占用,例如招聘,管理,開會等;我就發現,作為乙個技術首領,當花在程式設計上的時間低於某個比例後,管理效果和工作效率就會出現問題。之前我寫過一篇短部落格闡述過這種體驗和觀點,但沒有展開具體的描述。這裡,我將會對這個觀點展開更詳細的論述。
很多人認為,做為管理者,應該退出戰鬥第一線,專注於大戰略和管理工作。當然,管理者把大部分的時間用在這種事情上是應該的。但是,在我們這樣乙個行業裡,因為我們允許或要求管理者幾乎不再去程式設計,現實讓我們付出了沉重的代價。一旦乙個人停止編碼,他和程式設計師們關心的事物之間的重要聯絡就會退化。當這種情況發生時,決策,計畫和幹群關係就會出問題,從而瓦解了將技術人員提公升到管理職位的良好願望基礎。
程式設計師的百寶箱中最重要的乙個絕活就是估計工期。如果沒有準確預估的能力,整體計畫是不可能正確的出台的。大家也知道,做為乙個族群,程式設計師們對工期的估計是臭名昭著的。糟糕的不能再糟,事實上,當從程式設計師口中得到乙個預估的數字後,公認的方法是將它乘以二。通常,程式設計師都會對開發工作抱有非常樂觀的態度,但如果我們使用「estimate traction」理論,就會發現,程式設計活動表現出特別易變的特徵。因為我可以用很多方法實現乙個功能,當我們在還沒有深入細節之前,我們的估計就是不可靠的。
另外乙個事情是,技術經理必須對技術債務給專案造成的影響掌握第一手的資料。如今,技術債務這個術語非常流行,常被用來當作爭論是優先開發新功能還是先重構老**的彈藥。對「技術債務」這個詞的內涵熟悉的人通常最容易發起論戰。作為技術經理,你不僅僅是要熟悉這個概念,它們會在你判斷何時償還技術債務的決策中起直接作用。經常寫**的經理擁有更多更有價值的資訊來判斷何時/如何做出這樣的決策。
我並不是隨意選擇30%的比率的。我是基於自己的經驗,將足夠的時間參與到開發活動中,你很容易就能時刻掌握**庫的任何變化。如果時間太少,你對開發動態的掌握就是斷斷續續,無法連成線。一旦斷了線,我就需要重新理順脈絡,由此得到的懲罰就是浪費了額外的時間。
作為負責人,你不可能讓所有決策都由你制定或由你批准。但你需要了解所有決策的前因後果和背景知識,來輔助這些決策。最終,你要為這些決策的後果負責,你對專案情況的掌控能力要能匹配你的這份責任。
大家需要明白:要想成為乙個成功的經理,你需要為團隊成員提供服務,促進開發,確保他們完成任務。我曾在一篇部落格裡寫過如何診斷和修復經理們有問題的幹群關係。但是對於的管理程式設計師來說,你需要熱愛程式設計。因為你的團隊在程式設計,如果你在程式設計上做榜樣,他們都會對你肅然起敬。
儘管付出了最大努力,我仍然在保持30%的編碼時間上遇到了很多的阻礙。包括下面這些:
工作繁多:在乙個創業公司裡,你總有忙不完的工作需要去做,即使在公司有規模、壯大後,如何對眾多都很重要的事情排優先順序也是一種考驗。技術經理有很多職責,完全會佔滿他的70%的時間。下面就是一些:
當在探索如何奪回我的編碼時間時,有很多的方法並不奏效。
儘管走了很多死胡同,我還是發現了一些成功的方法:
下面是一些經驗建議,送給那些發現自己試圖達到30%但無法接近的技術經理們:
[英文原文:engineering managers should code 30% of their time ]
this entry was posted in 心得體會 and tagged 技術經理, 時間管理, 專案管理. bookmark the permalink.
英文好文 專案經理應該把30 的時間用在程式設計上
英文原文 譯文原處 在乙個科技公司裡,軟體技術經理用在程式設計上的時間應該不低於總工作時間的30 無論是管理乙個團隊,還是乙個分部,還是整個公司,當技術經理用在程式設計上的時間低於30 時,他執行職責的能力就會發生嚴重退化。我的這個斷言可能跟那些我看到的想成為團隊首領的軟體程式設計師們期望的情況完全...
軟體專案經理應該具備的心態
我們 專案經理 必須認識到有些現實是無法改變的 1.市場前期都會過度承諾 2.公司是要賺錢的,僅僅有虛名但不賺錢的事情公司是不會真正持久的 3.任何公司都是資源不足的 4.任何公司都有或多或少的管理問題,沒有問題的公司不存在 5.不要抱怨你的同事,他們肯定不是最優秀的,絕大部分時候你也一樣不是最優秀...
專案經理應該具備的系統思維
專案經理在進行專案管理的過程中,因為各種內外因素,對專案管理過程的認知和理解都是不一樣的,這種差異化使得專案管理的過程和結果會因為不同的環境而不同,這也是為什麼專案是獨特的原因之一。但是專案管理的成熟性也告訴我們,除了獨特性之外,一些明顯的共性也體現的很明確,對於專案經理而言,系統的思考這些問題,有...