一、软件工程师和嵌入式软件工程师有什么区别,哪个编程多
软件工程师当然只有编程了,嵌入式工程师除了编程外还有硬件相关工作。
二、硬件工程师,软件工程师,嵌入式硬件工程师,嵌入式软件工程师,哪个有前途
首先一个概念问题,搞计算机一般有三个大方向:软件工程,硬件工程,网络工程。
你问的问题属 软件工程和硬件工程范畴,
软件方向-软件工程师
硬件方向-硬件工程师(嵌入式)
然后嵌入式工程师里面可以再分:
嵌入式硬件工程师
嵌入式软件工程师
嵌入式软件工程师 跟 软件工程师的工作内容基本一致,都是做软件的开发,只是嵌入式软件工程师使用的开发语言偏底层一些(汇编、C、C++),需要跟硬件直接交互;软件工程师使用的开发语言一般是高级语言(JAVA、C#、PHP),不直接跟硬件交互。
重点:搞嵌入式更有钱途。
三、嵌入式工程师与软件设计师哪个更有前途。 嵌入式软件工程师,嵌入式硬件工程师,与嵌入式驱动工程师哪个好
学嵌入式开发的时候,首先接触的当然是上层的应用软件开发。。深入一点的时候就到了驱动工程师。也有一开始对硬件比较熟悉,选择从硬件开发开始,画PCB,硬件分布设计这些都要会。一般人都是做了几年软件开发之后慢慢深入到驱动开发,驱动开发待遇就要成倍翻了。但是没几年工作经验一般做不来,做不好。
具体职位的详细可以在百度百科看到仔细的。
单纯的做软件开发。。有点累。没嵌入式开发来得有趣。还可以接触实体硬件,并且个性化定制。
四、软件开发工程师与嵌入式软件工程师有区别吗
首先解释一下, 嵌入式就是一种IT技术,将相应的程序编好,然后嵌入到其他产品中。随着随着物联网、云计算的迅猛发展,作为这些产业应用技术中最核心、最关键的部分,嵌 入式系统无疑是当前最热门最有发展前途的IT 应用领域之一。我国嵌入式的人才缺口每年已达80万,越来越多的编程新人加入到嵌入式开发的大军中来。很多编程新人对从事嵌入式开发还是不了解,分为Java嵌入式和C++,这两种技术有不同之处。北京创客学院就为大家详细讲解。 这主要看你从事哪方面,wince需要C、C++、C#,linux需要C、C++。android需要java,而底层系统和驱动需要C或C++,所以C和C++很必要。如果你想往android应用程序发展就需要java,但是如果不是,那么可以不会java。如果你要是有C++基础,再看java其实很简单的,因为java和C++有很多相似之处的。所以无论怎样,学c++是上策。 懂编程的人都知道,上档次的软件都是C/C++写的。操作、编译器、数据库三大系统软件是计算机软件也的核心。操作系统是我们操纵计算机的界面和工具, 编译器是我们的开发工具,数据库是我们存储处理数据的仓库。在这个领域Java、C#只能望洋兴叹,也没有哪个厂商会用Java、C#开发系统软件,所以 在嵌入式系统领域几乎全是C/C++的天下。虽然java也可以开发嵌入式,但Java基本上只能用在上层界面应用部分,底层相关全是C写,况且嵌入式上层用C++也多过Java。 除了上面这些原因外,c++还有其自身的一些优点,比如c++是面向对象的程序设计,实用性高。C++的标准是庞大、层级分明的。如果你能熟练掌握全部 C++标准(语法、标准库),你的代码编写工作会极其精炼、轻松;C++兼容C语言几乎所有特征,你依旧采用C语言的思路,却可以轻易加入一个C++工程 的开发。
五、嵌入式工程师有发展前途吗
软件方面
浅度嵌入式(系统级嵌入式)。两种主要的表现,工控开发与消费品开发。
关于工控开发,以工业控制计算机为例。业内称之为系统级嵌入式开发,以C语言为主要开发语言,系统底层级别的基本碰不到,工程师要做的是实现上层的应用开发。当然有人会说,C语言的开发门槛不低,精通C语言本身就是较高的门槛。但实际上,在这个领域的开发并不需要你了解编译原理,并不需要时间空间复杂度的敏感,并不需要双向循环链表、二叉树、堆、栈等数据结构的理解,并不需要快排等算法的应用,更不需要APL @bhuztez(正在学,逃。。) 。。。。你需要的是什么看for,while,if....else,基本可以靠他们打天下。简单来说,有点C语言基础,再稍加磨练即可上手,当然,上手和精通是两回事。我们的组的成员结构中既有C9名校的硕士,也有普通高校的本科生,甚至有从别的非研发部门转过来的同事,现在,大家都在做嵌入式,呵呵,这个门槛还高吗看
关于消费品开发,以android开发为例。时下最火的可算是android开发了,无论是智能硬件,智能家居等,基本脱离不了安卓开发。这个的门槛高吗看如果你想把google的安卓源码刷一遍,那肯定是低不下去吧。实施上呢,市面上的安卓培训少吗看培训一个月,0基础月入过万的承诺少吗看哪怕有水分,打个折,7,8k总归也行吧。为什么能做到这样看我在读研的时候(蛋疼的电气专业),那会没有接触过安卓,有些课程设计,老师直接叫我们在一周内写个简单的App,不也能写出来吗看这意味着什么呢看
深度嵌入式(底层级别嵌入式开发)。操作系统包括linux和RTOS等。在这种深度嵌入式开发中,平台主要依赖于ARM。刨除掉ARM指令集和rn那几个寄存器,在很多人看来,arm和普通单片机没什么区别,无非就是配置那几个外设寄存器而已。当然,在上面架系统会稍微复杂点,但是很少需要开发linux内核,很少需要开发RTOS内核的工作。如果贵司有钱,使用Vx或者QNX这些操作系统,供应商已经直接根据你的硬件平台制作BSP给你直接用了,而你无非就是在上面开发一些应用而已,这样又回到上面的话题。我曾经接触过不知道ARM是一个公司这样的事实然后在ARM上面欣然开发的人。所以,这种看似深度嵌入式开发的门槛高吗看
硬件方面
硬件方面我大致把他分为硬件设计和硬件开发两个方面。
硬件设计,我主要只板级硬件设计,这里暂不把芯片级设计归为嵌入式领域。板级设计我们有数字设计和模拟设计。在板级硬件设计里面,确实看似门槛很高,为啥,真正设计出具有良好EMC品质的板子(更不用说几百M的N层高速板)的工程师靠的是多年的经验和不断地学习。这里面强调了两个方面,经验和学习,这两点足以使硬件设计成为高门槛。但实际上,很多公司出于资源配置和开发周期考虑,已经不再自主设计单板,更多的是设计原理图外包PCBA,这样一来已经大大地降低了硬件设计的门槛了。第二点表现是,开源硬件的兴起,以Arduino和Rasperry Pi,Arduino的门槛很低,源于他的设计初衷是给更多非电子专业出身,甚至是艺术家使用的,一套这样的开发板从原理图到PCB,bom都一应俱全,认真学的话,同样也可以以很短的时间入门,门槛还高吗看
硬件开发,以FPGA开发为例。FPGA开发,主要在通信领域,包括在近年来的机器视觉等方向都有重要的应用方向。但是在我们常见的应用领域中,实际上在大多数环境下,FPGA都是大材小用,但却不得不用。不少工程师只是学了点皮毛就开发,不跟你讲仿真,不讲约束,直接就上,更不用讲时间和空间的关系了,呵呵。为什么能这样来呢,几个原因:第一,FPGA在工业领域的应用并不需要FPGA的真正性能,更多的是扩展和保护来出发的;第二,现在无论是X家还是A家(这个应该说是I家了吧),都集成了丰富的IP核,当然这里面也包括了许多的第三方提供的IP,这些IP的提供能够让你直接使用,不再纠结于IP本身的开发,大大减少工作量;第三,X家还是A家都已经推出了C转硬件描述语言的开发工具,在我看来这些功能可能会让不少多年深耕RTL工程师口吐鲜血。这些工具的诞生,又大大降低了硬件描述语言开发的成本。回想当年某半导体公司的研发主管面试我时,语重心长地跟我说:verilog不是英语,你每写一句脑子里就应该有一个电路。现在想起来,这种能力素养只能应用在很精专的领域。
从软件和硬件两个方面讲述了嵌入式的门槛问题,好像把嵌入式贬的一文不值。那肯定不是我的初衷,上述论证的前提都是一个:入门。
曾经,我们谈论嵌入式门槛高,是因为真正的嵌入式是需要从硬件和软件两个方面去把握,硬件包括从一个器件的选型到布局布线到EMC,软件从底层的内存分配,系统调度,到算法到最上层的云。光这句话我想就已经够任何一个人付出巨大的不懈地努力了,既然如此,是否是青春饭,也应该有答案了吧。然而,入门的门槛确实不高。