你是合格的程序员吗?(欢迎大家自测)
轉載自阿朱大哥。歡迎大家自測。
一、自身代碼編寫能力
1、快速業務理解能力:他能快速準確理解產品設計人員的設計意圖
?
2、代碼符合業務設計/周全設計能力:他能快速編碼完成任務,而且高度符合產品設計,并且還能彌補產品設計文檔遺漏描述的不周全的點
?
3、代碼穩定性和性能能力:他能快速完成的代碼,臨界場景考慮周全/代碼穩定BUG少,性能高(并發、大數據量)
?
4、代碼結構化能力:他的代碼思路清晰,明顯能看出流程、函數,層次封裝良好
?
5、函數編寫能力:他的函數有明確的輸入、返回值、錯誤值、輸入參數校驗、異常保護、明確報錯、報錯詳細、并發線程控制、數據庫連接安全釋放、事務安全控制
?
6、代碼易修補能力:他的代碼出現了BUG,別人即使不用大幅度去閱讀代碼理解代碼,也能很容易重現問題或跟蹤問題并且修補該問題
?
二、閱讀、跟蹤、修改別人代碼能力
7、他能快速閱讀理解別人的代碼,快速定位問題,快速清理出復雜關系牽連和流程
?
8、他能夠快速重構代碼做到等價,并且容易進行測試確認
?
9、他能快速解決問題,解決周全,不留尾巴隱患或引出新的BUG
?
10、他能夠代碼審查別人的代碼,指出代碼隱患、不周全、不規范、不穩定、性能欠佳、不易擴展不易理解的的地方
?
三、代碼架構設計能力
11、模塊之間接口提煉能力:他的代碼接口提煉合理,能夠穩定,不會因為客戶項目定制而頻繁變動
?
12、代碼擴展能力:他的代碼好做客戶個性化定制擴展,只需要閱讀最小代碼范圍,只改動最小代碼范圍,只影響這一塊不牽一發而動全身
?
13、復用代碼設計與編寫能力:他的代碼模塊很通用,非常容易移植使用
?
四、技術驗證/技術攻關能力
14、他做技術驗證,能夠快速的給出周全的、數據依據、嚴謹的驗證結果,并且還能給出現實可行的解決方案,并且還能指出每種備選方案的優點缺點
?
15、技術攻關:能夠快速查找、定位客戶環境的疑難雜癥進行攻關解決
?
五、團隊開發技能促進能力
16、他能夠平時多開發一些:代碼審查工具、性能檢查工具、代碼框架、復用代碼/公共代碼,推廣到整個團隊
?
17、他能夠把平時學習和培訓中獲得的新分析方法、新設計方法、新開發方法、新測試方法引入到自身的開發編碼當中,并且能夠普及推廣給整個團隊。他能夠很積極把平時遇到的編碼技巧很及時的添加到咱們的編程指引當中。
?
如果你是資深開發人員,你需要把這五個方面都能勝任。
如果你是高級開發人員,你可能在團隊開發技能促進能力方面有所欠缺,不過你在做好自己的同時,你還能很快速搞定別人的代碼,而且平時做技術驗證、技術緊急攻關也讓經理放心.
如果你是中級開發人員,你在技術驗證、技術攻關上會有欠缺,但你可以很好的勝任閱讀、跟蹤、修改別人代碼。
如果你是初級開發人員,你在閱讀、跟蹤、修改別人代碼方面會有欠缺,所以只能安心努力照顧好自己的代碼。
?
但是,我們每個人都想一想自己,看看自己在初級開發人員的基本功上能達到幾點?
?
轉載于:https://www.cnblogs.com/82767136/articles/2714907.html
總結
以上是生活随笔為你收集整理的你是合格的程序员吗?(欢迎大家自测)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: perl随机打乱数组
- 下一篇: 怎样安全的使用可变参数宏__VA_ARG