程序員:編程能力VS溝通能力,哪個更重要

即便不是偉大的程序員,你也可以走的更遠。

  每個程序員應該具備 2 種能力,即編程能力和個人的職業技能。

  編程能力意味着你寫的代碼是可靠,高性能,易維護的。這跟程序員花費的時間,他的思維,以及廣泛的閱讀有關。

  職業技能讓你成爲一個好的員工,好的同事。這需要反應敏捷,有良好的溝通,明白期限,及時公開的反饋,能清楚解釋複雜的事物等能力。

  一個極端的例子。

  想象有 2 個人。

  Rodrigo 是麻省理工的畢業生,在他的空閒時間裏面他在編寫一個編譯器。他是 Haskell 核心的貢獻者,並且開發了一些著名的 Python 包。一般情況下,他的代碼具有很強的可讀性,並且完美的處理邊界問題。不過,他需要幾天的時間纔會回覆一封郵件,很少拿起電話,不明白最後期限的重要性。他做事情有自己的方式,看上去很散漫,你不能明白他的思想。

  Gabriella 不是一個很好的程序員,她的代碼像一個業餘的人寫的。她用 30 行的代碼完成一個僅用 15 行就可以搞定的事情,QA 需要把大量時間花在她的 bug 上。然而,她的反應令人難以置信 — 她在幾分鐘之內回答電子郵件,從不錯過一個電話,她是一個偉大的溝通者,能夠很清楚地向客戶解釋複雜的技術問題,她從未錯過最後期限,她不斷的通過反饋來提高她的工作效率,並且跟她很容易溝通。

  所以,你會在工作中跟誰搭檔?

  什麼是真正重要的?

  以我的經驗來看,一個程序員想跟 Rodrigo 做同事,而一個經理想要 Gabriella 做同事。

  這是有道理的,畢竟程序員碰到的都是讓人煩心的技術問題,而經理面對的是項目期限和溝通問題。

  但關鍵是,如果經理想要給某人升職的時候,Gabriella 就走在了前進的道路了。我已經看到很多次,那些並不偉大的程序員走到了頂端,而很多優秀的程序員卻因爲溝通問題一直留在底層。

  做爲一名程序員,是不是應該想想,良好的編程能力是不是決定事業成功的關鍵,還是有時候更需要具備溝通技能呢?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章