如何成為一名優秀的軟件工程師

jopen 10年前發布 | 7K 次閱讀 軟件工程師

  成為一名優秀的軟件工程師是每一個軟件工程師的目標,但是在實際中,優秀的軟件工程師和一般的軟件工程師的表現肯定是參差不齊的,這是什么原因 造成的呢?這是一個我們必須反思的問題,同時還是一個關乎團隊建設和個人成長的重要問題。Katsuya Noguchi 總結了優秀的軟件工程師和一般的軟件工程師的不同表現,為如何成長為優秀的軟件工程師提供了啟發和指導。

  現對這些不同點進行了整理更新,具體內容如下:

  1、編寫高質量的代碼

  良好的編程習慣不但有助于代碼的移植和糾錯,也有助于不同技術人員之間的協作。優秀的軟件工程師都具有良好的編程習慣,他們編寫盡量少的代碼即可滿足需求,還能夠引入恰當的抽象層次,重構代碼,將業務邏輯和其他程序邏輯分離。

  一般的軟件工程師編寫不出高質量的代碼,他們只關心自己的代碼是否能夠達到預期的輸出結果,只要有輸出結果,就認為自己的任務完成了,根本不在乎代碼的可維護性和可讀性。

  2、快速、高質量的產出

  優秀的軟件工程師能夠在代碼質量和開發所耗時間上做出很好的權衡,能夠嚴格控制技術風險,不斷完善自己,能夠在有限的時間內寫出高質量的代碼。

  一般的工程師寫出的代碼質量很低,還聲稱是最優的設計,時間限制常常是他們怠工的借口。他們的代碼會給企業帶來很大的負擔,并給團隊成員留下一大堆問題。

  3、解決問題能力

  優秀的軟件工程師不會盲目地編寫項目代碼,他們會確定每個問題的目標,找出問題的根本原因,并找到解決問題的合理方案。優秀的軟件工程師會將大問題分拆為小問題,針對小問題進行理解、構思、計劃、維護和重用。

  一般的軟件工程師只是匆忙編碼,解決所分配的問題,不會進一步思考正在解決的問題,從不考慮長期影響。

  4、正確的決定

  優秀的軟件工程師深知沒有完美的設計、服務和工具,他們還深刻理解可選方案以及實際狀況的約束并能做出適當的權衡。

  一般的軟件工程師只是盲目地使用當前比較流行的服務、設計和工具,而不做更深一步的理解和研究。

  5、團隊精神

  團隊精神和協作能力是程序員應該具備的最基本素質,優秀的軟件工程師所寫的代碼不僅能夠讓機器高效地執行,更重要的是能夠方便其他工程師閱讀、 改進和使用。他們寫測試用例,確保所寫代碼的正確性,還能夠方便其他人對程序進行改進。他們充分利用審查和使用代碼的機會,學習其他部分的代碼、分享代碼 風格、控制整個代碼的質量。他們認識到并且堅信,代碼審查的過程是相互學習和提高整個工程團隊產出質量的最佳時機之一。他們的評論能夠幫助團隊成員成長, 他們考慮整體設計、邊緣情況、格式改進及提高代碼整體質量的其他優化措施。

  一般的軟件工程師根本就不關心自己代碼的可維護性和可讀性,他們很少寫測試用例,除非寫測試用例是指派的任務。

  6、洞察力

  優秀的軟件工程師具有長遠的眼光,使他們能夠承擔起各種困難的軟件項目,他們經歷過無數的非預期任務,如被喊去解決線上服務器的問題,處理積累了很多技術債的代碼以及面對較為緊張的期限。

  一般的軟件工程師對發生的問題從不積極響應,還責怪別人處理不當;當事情進展不順時,他們很容易失去信心或推卸責任,不主動、不認真地解決問題。

來自: InfoQ
                    <span id="shareA4" class="fl">                            
                        </span>
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!