相对比较来说,嵌入式软件前景比较好点儿,
经调查,从事嵌入式系统工程师表示,做软件实际上有高下之分,开发语言从机器语言、汇编到C、C++,再到红透半边天的Java、C#等,该学哪种呢?为什么有些开发者工资低,而有些开发者千金难求?为什么3年的Java高级程序员薪水仅仅8k-10k,而一个Linux底层C语言程序员两年经验就敢要10k的薪水?
还是门槛,比如月薪15k的Linux嵌入式系统开发职位,门槛就有
Linux系统、Shell编程、Linux开发环境、C语言、ARM硬件平台、数据结构、Linux内核、驱动程序等,粗略数数就有8道关口,他需要非常熟悉整个的计算机体系,能做出实际的产品,而Java的开发者却仅仅是会使用名叫Java的语言工具,始终高高飘在众多层次之上,开发项目非常快,甚至可以不知道OSI模型,很可能自始至终都是软件蓝领。
嵌入式系统开发本身也有高下之分,至少包含嵌入式应用程序工程师和底层的驱动内核工程师两种。前者同样是使用现成工具进行简单劳动,比如使用J2ME
开发小游戏或者进行一些界面开发,而后者是根据芯片具体情况把操作系统(如Linux)移植到上面,同时编写必要的驱动程序,改写相应的内核代码。很显然后者是一个公司真正的技术核心。而技术核心的工资很可能是其他开发者的数倍。
嵌入式系统开发突出强制和项目,学习不仅仅是学习几项技术,而是构建你的知识体系。比如学习嵌入式系统开发,就要从基础Linux,C语言,数据结构开始,到ARM,汇编,Linux内核、驱动等,更重要的是更多的项目练习,设计至少5个项目,多达10000行强制核心代码的编写可以让你真正获得知识。为进入外企或者出国做准备。
未来的几年内,随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(电脑)
工具将是PC和因特网之后最伟大的发明。
首先一个概念问题,搞计算机一般有三个大方向:软件工程,硬件工程,网络工程。
你问的问题属 软件工程和硬件工程范畴,
软件方向-软件工程师
硬件方向-硬件工程师(嵌入式)
然后嵌入式工程师里面可以再分:
嵌入式硬件工程师
嵌入式软件工程师
嵌入式软件工程师 跟 软件工程师的工作内容基本一致,都是做软件的开发,只是嵌入式软件工程师使用的开发语言偏底层一些(汇编、C、C++),需要跟硬件直接交互;软件工程师使用的开发语言一般是高级语言(JAVA、C#、PHP),不直接跟硬件交互。
重点:搞嵌入式更有钱途。
嵌入式软件