你真的應該雇用老程序員。這一點我深信不疑。這些資歷比較老的程序員,不會像那些剛從大學里面畢業的學生那樣工作那么多時間。他們有孩子、配偶,需要還房貸,有機會還要去看一場比賽。他們不會在辦公室里通宵玩 Xbox 和乒乓球,也不會每周工作 80 個小時,實際上他們會利用他們的假期。當然,他們的工資比年輕程序員要高。不管有多少種理由會說雇傭老程序員有哪些不好的地方,但是你仍然需要一名。原因很簡單:他們就像巴黎歐萊雅那樣值得你擁有。我之所以知道這一點,因為就是其中一員。
經驗
老程序員可能無法像25歲時那樣,在腦子里保存那么多的代碼,但這些人的經驗非常豐富。我們知道,每一套系統的規模都在越來越大,大到最后都超過了你的腦容量——無論你的腦袋有多大——所以說能不能記住代碼并不是像你想的那么重要。相反,我們知道如何對每個系統進行模塊化。我們就是傳說中的“10x程序員”,不是因為我們代碼寫的有多好,而是因為我們已經看穿了一切。我們可以快速了解任何一門新的語言,因為我們已經用了很多年了。我們知道這些開發語言的共同特征。語言這個概念一次又一次地流行起來。只要有足夠的時間,我們就能發現其中的相似之處,并突出這些不同點。
判斷力
“在低價所獲欣喜被遺忘后低質量帶來的苦惱會長久保持。” —本杰明。富蘭克林
老程序員有更好的判斷力。他們知道需要重點測試系統的哪個地方,哪些地方是不需要的。他們可以從架構圖中看出可能出現的問題。他們可以告訴你針對特定項目可以運用哪些技術,以及如何優化可靠性、性能或開發速度(選擇任意兩種)。他們還知道如何做出好的權衡。即使從來沒有為你的項目寫過一行代碼,但是他們也是對得起他們的收入的。他們懂得如何提高質量。從長遠來看,質量意味著更低的成本。
學識淵博
“真正的知識來源于對某個主題及其內部工作的深刻理解” —阿爾伯特·愛因斯坦
老程序員在特定領域有很深厚的知識。這些知識幫助他們知道在哪里尋找bug,以及如何避免bug。例如,我非常了解GUI工具包,已經用了幾十年了。我曾在三個(Swing、JavaFX 和 SubArctic) 核心團隊中工作過。我從頭開始構建了自己的工具包,只是為了好玩!我知道UI工具包。我可以寫出過去的40年里關于工具箱的詳細歷史(嗯……也許我應該在某個時候把它寫下來)。
當我在一個新的 GUI 系統上工作時,我可以立即投入進去。如果我看到三個按鈕在右邊移動了相同的68個像素,那么我就可以立即看出這個 bug 是在三個位置中的一個(可能是全局到局部協調轉換代碼)。如果你想要創建一個新組件,我可以準確地告訴你需要哪些擴展點。對于UI工具包的工作方式的深入了解,意味著我可以比其他人更快地構建應用程序。我有25年的肌肉記憶,這一點可以幫我壯大我的膽子。關于UI工具包我有著很深厚的知識。對于其他人來說,它可能是內核驅動程序、數據庫索引或編譯器。關鍵是,深度知識要比數小時應用或原始編碼能力更重要。
知識面廣
都是優秀員工的小團隊可以輕松擊敗都是良好或者一般員工的大團隊。 —史蒂夫·喬布斯
老程序員都不求甚解。雖然我專門從事應用程序和前端開發,但我已經把整個堆棧都了解得很透徹了。我編寫了無內存限制系統的代碼。我已經構建了解析器、數據庫和固件;甚至還有一個非常糟糕的內核驅動程序。我已經繪制了演示圖形并生成了千兆字節的測試數據。你雇用我,應該不是叫我來建立數據庫或編寫固件或設計你的下一個網站,但我已經足夠了解這些系統的工作原理。這意味著我可以和那些在數據庫和固件方面的專家交談。我知道的內容已經足夠讓我和其他領域的人進行有效的溝通。正是這種溝通技巧使我成為一個富有成效的團隊成員,而不是原始的編碼能力。
溝通技巧
任何一名40多歲的程序員都必須具備良好的溝通技巧。這些能力和他們的編程能力一樣有價值。對于那些需要用到新的API的開發者們來說,如果沒有地去看這些API,那么它們幾乎是毫無價值的。很多大型軟件項目之所以失敗,不是因為糟糕的代碼,而是因為溝通出現了問題。
是的,表面上似乎是花了更多的錢,使得工作量變得更少了,但實際上是變多了。老程序員們可以正確估計并按時運行代碼。我們開發出的軟件,bug很少,性能表現也不錯。雖然我們寫的代碼少了,但是我們會產生更多的業務價值。這就是我們值得擁有的原因。
-
程序員
+關注
關注
4文章
954瀏覽量
30291
發布評論請先 登錄
阿里云升級通義靈碼AI程序員,全面上線
機械革命發布CODE AI程序員本
AI編程工具會不會搶程序員飯碗
軟通動力子公司鴻湖萬聯助陣鴻蒙1024程序員節成功舉辦

第五屆長沙·中國1024程序員節開幕
京東上萬程序員都AI用它!

程序員節視頻創意大賽,用串口屏贏取千元大獎

程序員節視頻創意盛宴,邀您共襄盛舉!

助力程序員告別困擾已久的夢魘-Bug

大模型時代,程序員當下如何應對 AI 的挑戰

評論