什么是“高級軟件工程師“,這個職位到底該做些什么,相信大家都有答案。在目前很多國內(nèi)軟件企業(yè)中,如果你是”高級軟件工程師“,那么從需求分析,設(shè)計,開發(fā),測試,甚至到客戶這一條龍都可能由一個人來負責。那么這個職位到底該做些什么呢?下面是我的認識。
1,軟件開發(fā)與測試
首先,軟件開發(fā)是軟件工程師職責的基本組成部分,這點應該沒有問題。其次,此處的軟件測試可分為開發(fā)前的驅(qū)動測試,和開發(fā)過程中的白盒測試。驅(qū)動測試用于分析子系統(tǒng)/模塊內(nèi)部邏輯,用于在開發(fā)之前暴露開發(fā)過程中可能遇到的大部分問題和對子系統(tǒng)/模塊進行更進一步的劃分;白盒測試是保證在項目交接到測試團隊手中時,能滿足基本的項目要求,即能夠進行α測試。另外,驅(qū)動測試因團隊而異,并非必須,但個人更推薦這么做。
2,子系統(tǒng)/模塊分析設(shè)計
在軟件架構(gòu)師做完系統(tǒng)設(shè)計,項目經(jīng)理進行項目分工后,項目就正式進入開發(fā)環(huán)節(jié)。這時候每個軟件工程師會拿到自己負責的子系統(tǒng)/模塊,首先要做的就是進行分析設(shè)計,其次才是開發(fā)。開發(fā)前進行分析設(shè)計,便于從整體上對子系統(tǒng)進行把握,提前隔子系統(tǒng)中的變化點和問題,同時也可以對子系統(tǒng)進行更詳細的劃分,用于制定個人的工作計劃,與項目經(jīng)理和軟件架構(gòu)師進行具體的溝通。
在這點上,要及早認識到并不是只有架構(gòu)師才需要進行軟件設(shè)計的,軟件工程師一樣需要,且是必備技能。相信有很多人拿到自己的任務(wù)時只是跟項目經(jīng)理進行簡單的溝通,知道自己要做什么,就開始悶頭寫代碼了,這是非常不可取的。
3,撰寫文檔
在進行子系統(tǒng)和模塊設(shè)計的同時,要撰寫子系統(tǒng)設(shè)計說明書;在開發(fā)過程中,要記錄技術(shù)要點和發(fā)現(xiàn)的問題,同時如有需要,要修改子系統(tǒng)設(shè)計說明書;在白盒測試時,要記錄每個Bug。以上這些文檔是為了方便以后進行項目維護,工作交接,問題分析,個人總結(jié)等等。
4,定期主動溝通
在項目開發(fā)過程中,項目經(jīng)理需要和團隊中的每一個人溝通任務(wù)進度,其主要職責是從整體上把握和控制項目的進度。那么作為團隊一員的高級軟件工程師通常會負責項目中很重要的子系統(tǒng)/模塊,這些子系統(tǒng)/模塊往往能決定項目的成敗。因此定期主動與項目經(jīng)理溝通解決遇到問題,與架構(gòu)師和專家溝通解決技術(shù)難題就顯得非常重要了。另外,就對個人而言,定期主動溝通也往往表現(xiàn)為個人的主動積極性,對于個人長遠發(fā)展非常有益。
5,持續(xù)學習
也許有人會覺得學習應該與職責無關(guān),狹義看來確實如此。然而,不斷學習新知識,提高個人技能,于公司而言,能提升工作效率;于個人而言,益于職業(yè)發(fā)展。因此,工作之余,不管你職位如何,持續(xù)學習就顯得非常重要且必要。
6,帶新人
這點也許不是硬性要求,然而據(jù)說國外有高手帶領(lǐng)新手這樣一種師徒習慣,我們也應該學習并發(fā)揚。通常情況下新人會與高級軟件工程師協(xié)同工作,因此帶新人一方面,帶領(lǐng)新人可以有重新審視自己知識的機會;另一方面能夠讓新人更快入手,降低學習成本和提高工作效率;同時也能保持良好的人際關(guān)系。
以上是個人對高級軟件工程師職責范圍的認識,也許有些比較牽強,然而就對職業(yè)發(fā)展而言,要想做好高級軟件工程師,上面幾條是平時工作中必須要做的。
-
軟件工程師
+關(guān)注
關(guān)注
8文章
218瀏覽量
21175
發(fā)布評論請先 登錄
相關(guān)推薦
![](https://file1.elecfans.com/web3/M00/05/24/wKgZPGd9BIKAasMYAAP9Ml_injM792.jpg)
不同時期的硬件工程師,最怕發(fā)生的事 #電子工程師 #硬件工程師 #內(nèi)容過于真實 #YXC晶振 #揚興科技
特斯拉招募軟件工程師強化無人駕駛與機器人遠程操作
![](https://file1.elecfans.com/web1/M00/F3/FA/wKgaoWciDI6ABdEhAAJtvu-cw_c556.jpg)
![](https://file1.elecfans.com/web2/M00/07/FB/wKgZombz6VuAFeotAAIjSCj1HKI007.jpg)
FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?
名單公布!【書籍評測活動NO.42】 嵌入式Hypervisor:架構(gòu)、原理與應用
![](https://file1.elecfans.com/web2/M00/FF/40/wKgaomahti2AV26dAAMiNIjdnKg435.jpg)
嵌入式軟件工程師如何提升自己?
![](https://file1.elecfans.com/web2/M00/EB/14/wKgaomZXAd-AWEwjAAuV2RdwuSM130.png)
索尼誠邀軟件工程師參與PS免費手游平臺設(shè)計
嵌入式軟件工程師和硬件工程師的區(qū)別?
![](https://file1.elecfans.com/web2/M00/E5/09/wKgZomZB1aqAfoLMAALwKMk88bw153.jpg)
![](https://file1.elecfans.com/web2/M00/DF/FB/wKgZomY1H9uAdzzJAAMwQMmJ0js548.jpg)
![](https://file1.elecfans.com/web2/M00/DE/DE/wKgZomYwuQ-AegjsAAISSibiD4I286.jpg)
評論