作為技術工程師,到底需要怎樣的專業能力
阿新 • • 發佈:2018-11-04
寫在前面:
行業裡的牛人真的很多,值得我們去追逐和學習。但很大部分卻將外界對於行業內的認知與行業的水平,拉低了很多很多。
直到幾年前,在軟體技術行業和網際網路中,仍然都是在談“不可替代”,“核心競爭力”和“剛需”。但看得越多,思考得越多,接觸得越多,辨證得越多,個人認為這是一個“偽命題”。
為什麼我會這麼斷言?因為這些經不起推敲,經不起折騰,扛不住變化。因為最大的不變就是變化。
那麼,作為技術工程師,我們到底要武裝哪些內容,變成什麼樣子?
我先從今天在 geekbang 看 ebay 測試架構師的分享內容,摘要重點出來:
測試工程師應具備的核心競爭力
- 測試策略設計能力
- 測試用例設計能力
- 快速學習能力
- 探索性測試思維
- 缺陷分析能力
- 自動化測試技術
- 溝通能力
測試開發工程師應具備的核心競爭力
- 測試系統需求分析能力
- 更寬廣的知識體系
我覺得對方整理得很不錯。不過,我認為還不夠(可能是受限於篇幅?),或者還太窄,視野還不夠?
首先從(開發、測試)技術工程師的基礎技術棧說起,主要是包括幾個大領域:
- 程式設計思想與程式設計基礎
- 測試基礎理論和流程管理理論
- 資料庫領域
- 伺服器領域
- 協議簇
- 其他(如各種中介軟體、容器、元件、框架等,又如存在壁壘的行業業務知識,甚至社會工程學等等等等)
接著,從更重要的品質(這個是可以讓人無限增長的)來談,應該包括:
- 學習能力。擅於洞察(觀察+思考),懂得分析,知道借鑑,勤於驗證,善於積累。靈活運用那5個'W'
- 執行能力。這裡的“執行”,是一個泛義詞。很好理解:當動力系統,還是阻力系統?
- 態度端正
- 其他任何你想得到的良好品質
最後,就是將基礎夯實,刻意練習和提高下潛。至少是得二維的T字型發展,或者是三維發展。
當然,也許還有很多不同的詞彙去形容或表達……
作為軟體工程領域的技術人,我們到底要變成什麼樣子?—— 能做廣度,更能做深度的硬通貨!