如何定義和區分進階軟體開發工程師

來源:互聯網
上載者:User

標籤:


在軟體開發領域,進階開發工程師通常是指那些編寫代碼超過 3 年的人。這些人可能會被放到領導的位置,但經常會產生非常糟糕的結果。Matt Briggs 是一名進階開發工程師兼 Scrum 管理員。他認為,單純使用年限來劃分開發人員存在問題,兩個同樣具有 10 年開發經驗的開發人員可能大不相同。近日,他發表了一篇博文,根據開發人員所能發揮的作用劃分軟體開發工程師的成長階段。

  初級開發工程師

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

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

  中級開發工程師

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

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

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

  進階開發工程師

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

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

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

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

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

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

 

摘自:http://www.cnblogs.com/hongmaju/p/4566477.html

如何定義和區分進階軟體開發工程師

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.