高級工程師及其他

可以參考:https://www.jianshu.com/p/2c20e273aff4

初級開發工程師

初級開發工程師通常是指那些剛剛結束學生生涯的開發者。他們以爲自己什麼都懂,但是面臨問題時卻又一籌莫展。他們不熟悉用到的工具,也不瞭解當前代碼庫。因此,他們需要監督,需要大量的培訓和指導,否則可能幾年過去了,他們仍然是初級開發工程師。

一名優秀的初級開發工程師應該能夠快速完成他人分配的工作,並且保證質量。

 

中級開發工程師

中級開發工程師不像初級開發工程師那樣只專注於代碼,他們開始通過試驗、文獻和與其他程序員的討論尋找構建系統的正確方式,也就是說他們會學習軟件構建理論。

一名優秀的中級開發工程師不需要監督。他們可以自己提出代碼設計的問題,並在設計討論中發揮重要的作用。他們也是開發團隊的主力。但是,他們在遵循“設計模式”和“領域驅動設計”等理論方法設計系統時,可能會出現過度設計的情況。因此,有必要對他們進行進一步的指導和更高層次的監督。

Briggs指出,絕大多數的高級軟件開發工程師和團隊負責人實際上都是中級開發工程師,只是大部分人都沒有意識到這一點。

 

高級開發工程師

高級開發工程師拋棄了支配中級開發工程師的複雜性,追求簡單至上。他們不再按照知識劃分開發者,而是瞭解每個人的優勢和不足。在理論運用方面,他們重視“上下文”,而不是一味地追求“正確方式”。他們知道,構建優秀的軟件,唯一的方式是改造理論方法,適應客戶、代碼庫、團隊、工具和組織的需求,在設計模式、庫、框架和流程之間尋找平衡。

高級開發工程師更多地爲別人考慮,瞭解組織和客戶如何工作,知道他們的價值所在。他們從來不會說“這不是我的工作”。他們的工作是提供問題解決方案,總是考慮他們的工作會爲組織和客戶帶來什麼價值,而不是他們會有多大的工作量。

中級開發工程師會鑽研一些令人厭煩的工作,但高級開發工程師會退一步,看看是什麼導致了這樣的工作。他們會評估修復問題根本原因的成本,從而決定是直接修復,還是先讓系統運行起來,後續再修復。

高級開發工程師清楚地知道,他們的主要作用是讓團隊變得更好。同時,他們也深知,領導不是權力,而是授權,不是命令,而是服務。

Briggs指出,如果團隊沒有高級開發工程師擔任領導角色,那麼項目註定要失敗。高級開發工程師是唯一有資格選擇技術和平臺的人,因此,從項目開始的第一天起就應該有一個這樣的人。

Briggs承認,這種劃分方式過分簡單,卻也可以提供一些有用的信息。他建議,企業在招聘時要考慮團隊和組織的人才構成。

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