軟件開發都需要哪些崗位參與?
最近一直在學習軟件工程的相關知識,通過看書和網絡課程在腦中搭建了軟件工程的基本架構。同時,在工作中留心觀察,發現軟件工程在工作中真的是無處不在。
今天介紹一下關于長春軟件開發過程中涉及的崗位及各崗位的職責。由于參照汽車ECU軟件開發的各個崗位職責,這與互聯網行業/軟件行業的分工還是有些區別,但大體崗位一致,供大家參考。
角色介紹
根據崗位劃分,軟件開發的需要項目經理、系統工程師、硬件工程師、軟件開發工程師、軟件測試工程師、系統測試工程師等職位。
在軟件開發的整個生命周期內,每個崗位都有各自職責,接下來介紹汽車ECU軟件開發中的各崗位的職責。
項目經理(project team manger)直接與客戶溝通,負責確定產品價格、產品功能、開發周期以及發布版本數目。該崗位對應互聯網企業的產品經理,而且該崗位最容易升職為部門經理,也是我這兩年的奮斗目標。
系統工程師(System Engineer)負責管理產品的系統需求,由于所開發產品不是單一ECU,而是多個零部件組合構成的系統化產品,因此該崗位負責管理系統需求,同時也與主機廠客戶溝通,并將用戶需求轉化為系統需求。
硬件工程師(Hardware Engineer)主要負責汽車ECU的硬件開發,比如芯片及其他元器件的選擇。當然,為了節約研發成本,企業會開發硬件平臺,也就是說某款硬件平臺能用滿足多個項目的需求,所以公司硬件工程師數量不多。
軟件開發工程師(Software Engineer)軟件開發分為兩種:平臺軟件開發和產品軟件開發。
平臺軟件開發工程師是根據硬件平臺開發底層軟件模塊,該崗位不負責具體產品,主要是為應用層開發提供各種接口,以及控制底層硬件。
產品軟件開發負責產品功能開發,直接與產品打交道,主要是編寫業務邏輯代碼以及解決各種bug。同時,產品軟件開發工程師負責將系統需求轉化為軟件需求,并將其實現。
目前,我屬于產品軟件開發工程師,能夠開發直接面向用戶的產品是非常好的一件事,該崗位能夠幫助我了解客戶提出的各種需求以及提出這些需求的原因。相比于現在的嵌入式軟件開發,我更向往加入互聯網企業開發直接面向人的軟件產品。
軟件測試工程師(Software Validation Engineer)是負責軟件發布之后的各項測試,日常就是采用各種姿勢測試軟件,然后把發現的bug給開發組。因此,在剛入職時,老大告訴我與測試組小姐姐們搞好關系,加不加班全靠她們了, 哈哈。。。
系統測試工程師(System Validation Engineer)是負責產品的實車測試,這個崗位挺辛苦,經常出差不說,如果在客戶那邊測出重大問題,會被客戶罵成狗。
總結
上述列出的崗位是在軟件開發過程中與我直接發生溝通的崗位。當然,由于很多崗位太過偏門,就不在這里一一列出。
此外,有些崗位我還未接觸。并不知道他們的具體職責。隨著日后工作的深入,相信會對整個組織架構有更加清晰的認知。
總而言之,軟件開發是一個系統化的工程,并不是寫代碼就算是軟件開發了。在進入這個行業后,能盡早發現自己不具備軟件工程的意識,于我來說是一種幸運。
在日后工作中,利用軟件工程的知識指導日常工作,早希望日成為一名合格的程序員。
---------------------
作者:Eric_Webo
來源:CSDN
原文:https://blog.csdn.net/dwayne_blog/article/details/89106123
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
上一篇:軟件開發的常識
下一篇:做軟件定制開發的企業怎么選擇?