嵌入式硬件工程师与软件工程师的区别
软件开发工程师待遇嵌入式硬件工程师与软件工程师都有哪些不同呢?具体工作都包括什么?就业前景如何?工资待遇如何?这些都是大家十分关心的问题,尤其是对于即将走向工作岗位的学生来说,这些问题直接影响到他们的择业及将来的发展方向。
下面从几个方面来解答这些问题。
什么是嵌入式硬件工程师?
随着嵌入式技术的普及,硬件工程师的性质也有所改变。嵌入式硬件工程师与我们平常所说的硬件工程师不同。嵌入式硬件工程不但要求具备硬件工程师的基本技能,还必须完成部分软件工程师的工作,例如:底层驱动的开发嵌入式操作系统的裁剪,移植;GUI、文件系统等软件的移植;基于嵌入式操作系统的底层驱动程序的设计等。
什么是嵌入式软件工程师?
嵌入式软件工程师与我们平常说的软件工程师不同。
我们平常说的软件工程师大部分指的是windows和linux操作系统下应用软件的开发人员,硬件平台是基于PC机的。而嵌入式软件工程师则是指在wince、linux等嵌入式操作系统下进行用户应用软件开发的人员,硬件平台则是基于嵌入式产品的(例如:手机、PDA等)。软件开发工具也有所区别,嵌入式软件开发一般使用的是嵌入式系统专用的开发工具,例如wince下的evc,和linux下的qt等。
嵌入式软、硬件工程师职能、工作性质的区别
嵌入式硬件工程师的主要工作包括:
方案设计
根据客户需要进行可行性分析、整体功能设计、硬件成本预算等,在完成功能的同时还必须考虑到产品的生产加工、后期维修等各方面问题。
元件的选型
选择元件时必须根据每个元件特性和电路板特性,成分考虑到性能,干扰,功耗等问题。
电路的设计
元件的位置,产品的功耗,各部分功能完整性,抗干扰等
电路板设计
要求设计出的电路板,安全可靠,美观,拆装方便。
系统集成及调试
产品样品的组装集成及硬件调试。
底层驱动程序设计
根据硬件资源进行驱动程序的设计。
操作系统的裁剪移植*
根据需要选择最优的操作系统进行裁剪和移植
GUI及文件系统等软件移植*
根据需要加入GUI及文件系统等软件。
注:*表示该工作有可能不需要。
嵌入式软件工程师的主要工作包括:
人机交互程序设计
图形用户界面(GUI)程序设计
用户应用软件设计
软件系统测试
举个简单的例子:
就拿手机的设计来说,硬件工程师需要根据要求完成以下工作:
1、根据用户的需求例如:直板还是翻盖的,尺寸多大,功能要求(MP3,GPRS,触摸屏等),成本要求等。对整个方案进行设计。
2、选择最优的元件,例如液晶屏、CPU等
3、进行电路的设计
4、集成和调试
5、底层驱动程序设计
6、移植wince、linux或者symbian等嵌入式操作系统
软件工程师需要完成以下工作
1、设计友好的人机交互程序
2、制作精美的操作界面
3、设计加入音频播放、视频播放、游戏等娱乐功能
软、硬件工程师工作性质的区别
嵌入式硬件工程师的工作是为软件工程师搭建好硬件平台和必要的开发环境。嵌入式软件工程师则是根据用户的需要完善产品的软件功能。硬件工程师就像是设计师和建筑师,负责整个建筑的设计和建设。软件工程师则是负责房间的装修,锦上添花。
总的来说,硬件工程师的工作性质尤为重要,因为硬件工程师在设计产品时不但要完成产品的基本功能,还必须考虑多方面因素:功耗、干扰、后期维修、生产安装等。一旦某一个因素考虑不周全,会造成整个产品的设计失败。
除此之外,产品在设计中可以没有软件工程师,绝不能没有硬件工程师。因为在某些对实时性要求严格的嵌入式产品(例如:工业产品)或者某些低性能的嵌入式产品(例如:CPU使用单片机的产品)中,往往是不能够使用操作系统的。这时,整个产品的设计工作则全部由硬件工程师来完成了。
嵌入式软、硬件工程师的就业形式
软件工程师的工作性质使得软件工程师的起点较低,所以目前国内的软件工程师居多。并且目前国内的嵌入式培训都是以软件培训为主。所以从长远看,硬件工程师的就业压力要小。
但是另一方面,企业中硬件开发人员需求量要比软件开发人员的需求量小。因为一旦产品定型,后期的产品升级都是由软件来完成的,硬件的更新和变动很少。
嵌入式软、硬件工程师的工作稳定性
一般来说软件工程师的人员流动性要比硬件流动性要大。
首先,我们都知道,产品是企业生存的命脉,如果产品的设计资料泄露,那么该企业的生存优势就不存在了。所以,企业会千方百计的留住产品设计的核心人员,尤其是硬件设计人员。
另外,培养一个硬件工程师比较难,而且时间也比较长。所以企业一般不会主动去培养一个硬件工程师,并且也不会轻易放弃一个硬件工程师。
第三,由于目前软件工程师居多,企业可供选择的机会也多,所以软件工程师的流动性要高。
嵌入式软、硬件工程师的工资待遇比较
工资待遇的高低由企业所处的地域、行业、企业的性质和人员的工作岗位而定。由于每个企业的情况不同,所以工资待遇的差异很大。
对于以硬件产品为主的企业来说,硬件开发的成本高,产品的成本也高。因为后期的加工生产,维修等等都需要很大的费用。所以企业的利润较低。不过由于硬件工程师掌握着企业的命脉,所以企业会提高硬件设计人员待遇。
对于以软件产品为主的企业来说,开发的成本较低,一旦开发完成,后期的产品基本无成本。所以软件行业的利润较大。但是,由于软件工程师人员多,所以待遇也有所下降。
硬件工程师和软件工程师的待遇影响因素很多,无法具体的比较,总的来说应该是持平的。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论