你還不是一個軟體工程師

oschina發表於2016-02-17

如果你以寫程式為生計,那你有機會稱自己我“軟體工程師”。 但也有可能你稱不上。

就我而言,我畢業於一個工程(軟體系統)學位並且時常很自豪的稱自己如是。

但是,只有“編寫程式碼”多年後我才明白,稱自己作為一個工程師是一個正確的,不是來自大學,但卻必須要獲得的東西。

有多少“軟體工程師”可以稱他們是和阿基米德,亨利·福特或者尼古拉·特斯拉範疇的?

把我們的眼觀放低一點,有多少人可以說他們做產品至少有10年?又或者5年?又或者是5個月?

切莫焦慮

倘若你並未贏得自稱工程師的資格,切莫焦慮,我相信你是可以做到的。

我認為作為軟體工程師最重要的要素就在於他們(真正稱職的軟體工程師)是極富原則性的,並且能夠做到真正堅信他們總能取得進步。

通過自律,你明瞭自己的立場及其原因。或許更重要的是你能夠與他人分享。

當你堅信你能不斷取得進步,那麼你將持之以恆地傾聽他人、向他人學習,激勵自己變得更好。

為了達到這個目的,這篇將是一系列分享我的原則及往年所學的帖子之一。

盡情閱讀吧!

不斷從“價值優化”的角度來檢查你度過的每一天

程式設計師每天多的讓人驚訝的時間浪費在沒有意義的事情上,坦白說,是在作無用功。

如果一件事不會給你或者你公司帶來任何價值,那為什麼要花時間在上面呢?通常這種事情是會議、聚會或者”流程”之類。

最近我一個朋友向我抱怨,自從升為“團隊領導”之後,自己幾乎沒完成任何一件事情。

所以他決定回顧檢查自己的時間。他發現一週之後,自己僅僅在“工程”方面花的時間總共20min。

現在,如果他的其他的時間是花在指導或領導團隊上倒是還好,但不幸的是大部分時間”花在“其他人、其他團隊、其他部門等等。

請不要把我的觀點誤解為合作和交流完全沒必要。

我的意思是作為工程師,我們的重點是找到最佳解決方案。這才是工程師要做的。

比如說:

  • 如果會議是關於“同步”的(團隊成員之間同步進度),那就積極一些。把你的進度狀態釋出到wiki、內部部落格或者郵件列表。讓其他成員及時瞭解你的進度,適應大家的節奏。
  • 如果你是團隊或者部門領導,並且感到在會議上花很多時間去解決小問題,那就放權,交給下屬。這不僅僅騰出你的大量時間,而且讓團隊成員積累更多經驗,更快成長。請務必授權下屬進行部分或者全部決策,否則,解決問題的人會要求你不斷參與進來。同時務必要支援下屬的決策;他們需要自信來進行決策,表達你意見的時候不要到這懷疑的情緒。
  • 如果你老闆想要指導“哪些正在做”或者“哪些已經完成”,那最好找個工具彙報這些事情。建立一個隨時更新的任務列表,這是一個團隊成員花一點點精力就可以做到的小任務。
  • 如果“流程”要求你用5個步驟完成任務,但大部分是麻木機械的工作。(比如生成改變日誌或者傳送郵件提醒),那你就發揮你作為“碼農”的特長,儘量自動完成。想一下,如果有個簡單任務要求你每天要花10min完成。那你花2小時寫個指令碼把這個任務簡化到2min,“浪費”的時間只需要15天你就賺回來!!!
  • 發現自己經常由於email或者即時通訊訊息所干擾分心?那就關掉這些應用!作為程式設計師我們的工作需要集中注意力,任何小干擾都可能搞亂我們的流程,打亂節奏。這種在電腦上通過文字的交流方式有一個最大的優點,那就是“非同步”;這意味這你可以在任何空閒進行交流。一些人採用“番茄工作法(http://pomodorotechnique.com/ )”來解決這個問題。雖然我建議你試試,但是這並不適合每個人,我試了試覺得很難堅持。(譯者:臥槽,那你還推薦)

生活於快節奏的環境之中,我們極易興奮於那些就展現在我們面前的事物,並且不停地從一個任務奔向另一個任務,而不去思考為什麼這樣。

我強烈建議您,時不時回頭看一看、問一問:

  • 我的日子是如何逝去的?
  • 我今日是否致力於最重要或最有價值的事情?
  • 我是否本該更有效地做別的什麼事?

最後,(我要說)珍惜屬於你的時間,你可以“開發”出更好的解決方案:用你的技能使生活更加美好!

相關文章