公司新闻
当前位置:首页 > 新闻中心 > 公司新闻

软件开发都需要哪些岗位参与?

浏览:   发布时间:2019-07-22  [我要打印]

最近一直在学习软件工程的相关知识,通过看书和网络课程在脑中搭建了软件工程的基本架构。同时,在工作中留心观察,发现软件工程在工作中真的是无处不在。


今天介绍一下关于长春软件开发过程中涉及的岗位及各岗位的职责。由于参照汽车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 

版权声明:本文为博主原创文章,转载请附上博文链接!


版权所有:长春上信科技有限公司  吉ICP备16006330号-1     网站地图技术支持:深度策划