1. 程式人生 > >35歲是程式設計師工作的終點!?(三)

35歲是程式設計師工作的終點!?(三)

“35歲是程式設計師工作的終點。”這句話到底是什麼意思呢?

猜想三:效率
35歲的程式設計師因為工作內容的緣故導致各方面效率下降
不只是工作,更常見的在於溝通和帶人

工程師天生不善溝通嗎

實際工作中,溝通所導致的問題層出不窮。工程師有不少是比較內向的,總是被貼上“不善溝通”的標籤。實際上,溝通能力是工程師最重要的能力之一,良好的溝通是高效工作學習的基礎,也是通過學習可以掌握的。下面我按工程師的語言說說溝通方面的經驗。

第一類常見的問題是溝通的可靠性。從可靠性的角度來講,溝通分為TCP模式和UDP模式。TCP模式的形象表述是:我知道你知道。UDP模式的形象表述是:希望你知道。TCP模式當然比較可靠,不過成本比較高,UDP模式成本低,但是不可靠。在溝通可靠性方面,常見錯誤有如下兩種:

1.經常聽到的這樣的爭論。一方說:“我已經告訴他了”,另一方說:“我不知道這個事情呀”。把UDP模式被當作TCP模式來使用容易產生扯皮。

2.過度溝通。有些同行對溝通的可靠性產生了過度焦慮,不斷的重複討論已有結論問題。把TCP模式當成UDP來使用,效率會比較低。

第二類溝通問題是時效性問題。從時效性講,溝通分為:同步模式和非同步模式。同步溝通形象地說就是:你現在給我聽好了。非同步溝通的形象表述是:記得給我做好了。在溝通時效性方面,有如下兩種常見錯誤:

1.已經出現線上事故,緊急萬分。大家你一言,我一語,感覺事故可能和某幾個人有關,但是也不能完全確定,所以沒有通知相關人員。最終,一個普通的事故變成了嚴重事故。對於緊急的事情,必須要同步溝通。

2.半夜三點你正在熟睡,或者週末正在逛街,接到一個電話:“現在有個需求,能否立刻幫忙做完。”這會非常令人鬱悶,因為那並不是緊急的事情。不是所有的需求都需要立刻解決。

有效溝通的一個重要原則是提前溝通。溝通本質是資訊交流和處理,可以把被溝通物件形象地比喻成序列資訊處理的CPU。提前溝通,意味著將處理請求儘早放入處理佇列裡面。下面的例子讓很多工程師深惡痛絕:一個需求策劃了1個月,產品設計了2周。當開發工程是第一次聽說該需求的時候,發現開發的時間是2天。工程師據理力爭,加班加點1周搞定。最後的結論是工程師非常不給力,不配合。就像工程師討厭類似需求一樣。要協調一個大專案,希望獲得別人的配合,也需要儘早溝通。

有效溝通的另外一個重點是“不要跑題”。很多看起來很接近的問題,本質上是完全不同的問題。比如:一個會議的主題是“如何實施一個方案”,有人卻可能提出“是否應該實施該方案”。 “如何實施”和“是否應該實施”是完全不同的兩個問題,很多看起來相關的問題實際上跑題很遠。“跑題”是導致無效溝通的重要原因。

良好溝通的奧祕在於能掌握TCP模式和UDP模式精髓,正確判斷問題的緊急性,儘量提前溝通,避免跑題。
在這裡插入圖片描述Java企業級電商專案架構演進之路 Tomcat叢集與Redis分散式和Java深入微服務原理改造房產銷售平臺,需要完整Java全套資料可以掃下方微信碼免費領取
在這裡插入圖片描述專案效果展示圖

帶人之道

有些初為導師的工程師由於擔心畢業生的能力太弱,安排任務時候諄諄教誨,最後感覺還是有所顧慮,乾脆自己寫程式碼。同樣的事情發生在很多剛剛管理小團隊的工程師身上。最終的結果他們:寫完所有的程式碼,讓下屬無程式碼可寫。“ 事必躬親”當然非常糟糕,最終的往往是團隊的整體績效不高,團隊成員的成長很慢,而自己卻很累。

古人說:“用人不疑,疑人不用。”這句話並非“放之四海而皆準”。在古代,受限於通訊技術,反饋延遲顯著,而且資訊在傳遞過程中有大量噪音,變形嚴重。在這種情況下,如果根據短期內收集的少量變形的資訊做快速決斷,容易陷於草率。在公司裡,這句話用於選人環節更為恰當,應該改為:錄用不疑,疑人不錄。

考慮到招聘成本,就算是在錄用層面,有時候也無法做到。作為一個小團隊的管理者,能夠快速準確的獲取團隊成員的各種反饋資訊,完全不需要“用人不疑,疑人不用”。用人的真正理論基礎來自於“探索和利用”(Exploration and Exploitation )。不能因為下屬能做什麼就只讓他做什麼,更不能因為下屬一次失敗就不給機會。

根據經典的“探索和利用”(Exploration and Exploitation )理論,良好的用人方式應該如下:

首選選擇相信,在面臨失敗後,收縮信任度。

查詢失敗的原因,提供改進意見,提升下屬的能力。

總是給下屬機會,在恰當地時機給下屬更高的挑戰。 總之,蒼天大樹來自一顆小種子,要相信成長的力量。

效率、效率、效率

經常看到有些同行給自己的績效評分是100分——滿分,原因是在過去一段時間太辛苦了,但最終的績效卻一般般。天道酬勤不錯,但是天道更酬巧。工程師們都學過資料結構,不同演算法的時間複雜度的差距,僅僅通過更長的工作時間是難以彌補的。為了提升工作學習效率,我們需要注意以下幾點:

主要關注效率提升。很多時候,與效率提升所帶來的收益相比,延長時間所帶來的成果往往不值得一提。

要有清晰的結果導向思維。功勞和苦勞不是一回事。

做正確的事情,而不僅僅正確地做事情。這是一個被不斷提起的話題,但是錯誤每天都上演。為了在規定的時間內完成一個大專案,總是要有所取捨。如果沒有重點,均勻發力,容易事倍功半。如果“南轅北轍”,更是可悲可嘆。

Java同行願更進一步者,來者不拒資料免費放送
在這裡插入圖片描述