嵌入式工程师结合经历聊硬件工程师和软件工程师哪个更有前途?

我个人对美国这方面了解更多,就先从美国说一说。我相信硬件工程师和软件工程师的就业前景应该是提这个问题的人最想知道的方面。

就我所了解的,在现在以及可预见的未来,这个行业对软件工程师的需求绝对是碾压硬件工程师的。也就是说,招软件工程师的职位比硬件工程师的职位要多的多,而且软件工程师找工作上来说会比硬件工程师更容易。

先从企业的角度来讲讲。我个人认为造成这个差异的原因,第一个是基本上所有的公司,从初创公司到全球百强,都有对软件工程师的需求。现在哪个公司不需要几个码农来开发app,或者做个web。但是做硬件这种工作并不是所有公司会去做的。

举个简单的例子,摩根大通银行在我们学校的招聘会上明确招软件工程师,expedia也明确招聘软件工程师,如果这个两个公司突然说要招电子工程师,这不是逗我吗。。而且哪怕是硬件公司,也需要大量的软件工程师来支持硬件前端工作。

第二点我觉得要归功于现在的创业潮。不管在美国在中国互联网创业都是趋势,但是可以说绝大部分的初创互联网公司做的都是软件方向。有个点子,有点技术,找几个合伙人抱着电脑就能开干了。但是初创公司要专注做硬件开发就比较难了,因为成立设计硬件公司的门槛和起步开销比较大。所以这也导致大部分初创公司以互联网为主,能做的了硬件设计的公司基本上都是处于垄断地位的大企业。

第三个很重要的原因就是硬件设计在现在来看已经是相对成熟的技术,我甚至有ee的同学跟我说大部分硬件的东西已经步入夕阳产业的范畴,因为很多东西已经成了规范,也因为很多东西被自动化所取代。

前一阵子全球大牌的硬件公司才裁了不少人,intel更是裁掉了接近20%的硬件工程师。但是互联网热从90年代开始到现在热头还没过,而且未来诸多产业如人工智能、机器学习、图像识别、大数据都才刚起步,所以还有一定的上升空间。

还记得当初我们学校的初创公司招聘会上几十家公司只有一家招硬件工程师,而且还是偏软件的硬件工程师,剩下的公司里98%都在找会码代码的人;大企业的招聘会上才能见到nvidia、arm、 intel、 TI 的身影,但是哪怕是这样,基本上所有的公司招牌上都会有大写加粗的招computer science的字样。。

再从个人的角度来讲。想成为一名软件工程师找到工作的门槛远比成为一名合格的硬件工程师低很多。要想以软件工程师的身份混到个饭碗,学两门语言学好,常用的数据结构,刷点题就基本上能找到薪水小几千的岗位。

我甚至知道国内有专门的软件工程师培训机构,那种专门教java和算法,两个月速成班,而且所声称的学生就业率还挺高的。

但是要想成为一名合格的硬件工程师,不是科班出身的不好好学几门模电数电信号逻辑设计的课,没有在学校实验室里自己焊点电路做实践,连简历都发不出去。而且现在要想学个什么语言框架,网上搜一搜“”xxx语言入门教程“”就有非常丰富的资源,但是要是在网上搜“如何学好超大规模集成电路设计”,要想找到可以受用的资源几乎是不可能的。

而且就我所参加的招聘会来说,如果有招硬件工程师基本都要求有研究生的学位,但是对软件工程师的要求基本上就是熟悉算法数据结构,会web编程有相关经历就够了。

软件工程师很多时候吃的是体力,硬件工程师大部分时候是吃经验,所以硬件工程师一般得有一定的经历积淀才能脱颖而出。尤其像模电这种上手程度很高的方向,没个十年八年的相关经验根本不算学成出师。所以说本身对从业者的资质要求更高,也是硬件工程师不好找工作的原因之一。

上面是我所认为的短时间内软件工程师就找工作方面来说会比硬件工程师更容易的原因。

但是这并不意味着会编程就肯定找得到工作,也不意味着硬件产业就会低迷下去。

软件工程师的职位多,但是每年从事这个职业的人也更多,虽然我认为现在软件工程师短期内还没有出现饱和的趋势(毕竟那么高的工资还摆在那),但是总有一天这个行业也会像金融产业一样降温(人才供过于求)。

硬件产业虽然大部分已经有步入夕阳产业的趋势,但是曾经一度被宣称没啥好搞的供电网络最近也被smart grid搞得神乎其神,美国top5的高校都还设立了相关实验室。此外,现在物联网,车联网,智能家居的概念被炒得火热,我相信等相关成熟的支持技术(能量采集,低功耗通信)以及统一的开发平台一旦出现,硬件工程师的需求只会更多,虽然这些产品依旧只有那些有背景的大公司才做得动(不过因为欧美国家电子产业上的封锁,国家也在硬件设计上砸了很多银子,初创企业也会慢慢增加,相信国内的相关机遇也会更多)。

而且毕竟软件产业还是依靠硬件,如何设计低功耗,高稳定性,能够承载大吞吐量计算量的硬件也是这个产业的挑战,毕竟人工智能,机器学习,视觉处理等领域是很吃硬件计算量的。没有强大的硬件支持,阿狗要想打败李世乭还是痴心妄想吧。

本人现在在一家为硬件的公司设计软件的百强软件公司实习,做的工作大部分还是偏软件,所以本身对工作常态也并没有非常深入的自己的感受。但是就我观察身边的同事以及跟别人的交流来看,不管是做软件硬件,都是要:对。着。电。脑。。。

软件工程师平时就是上班啊调试程序,比较低级的码农只能给高级软件工程师打打下手,帮他们做测试,实现他们设计好的东西。当然做到高级工程师了才有能力开发设计自己公司的产品。

如果在初创公司工作节奏更紧张,如果赶上产品要上线可能需要加班调试。遇到程序爆炸了可能还需要on call(就是你负责的东西突然出问题了,你的manager直接打个电话给你,你得马上去公司修bug),至少我知道amazon是有这个机制。我现在还没有在纯做硬件的公司实习过,但是从我知道的事实来看,硬件工程师不会比软件工程师轻松。

硬件工程师也需要调试电路啊调试脚本啊,反正也有跟软件工程师交叉的工作。工作环境取决于细分的工作类别。开发FPGA的估计跟码农一样坐办公室,搞MEMS的、嵌入式的就长期入驻实验室了。因为大部分硬件公司都是相对成熟的大企业,所以工作节奏普遍不会像在初创公司那么紧张,不过像在华为这样的企业就另说了。。。

当然不管是软件工程师还是硬件工程师,工作强度应该都是高于其他industry的职业的。毕竟这个行业竞争会越来越激烈,这也是聪明人聚集的地方。至于工资的话,就平均来讲,美国这里的软件工程师年薪会略高于硬件工程师(从glassdoor以及其他门户的数据来看),但是软件工程师一样也有收入低的,硬件工程师的收入也有碾压软件工程师的。只要你技术过硬,薪水都不是事儿。

有人说软件工程师前景更开阔一些,我个人的感觉是不管怎样,这两个行业在未来都会有非常非常多的机遇与挑战(详细原因见第一点)。

不管是软件设计还是硬件设计,底下都有更多细小的分支(比如说你硬件设计是想做vlsi,dsp,处理器设计,通信,fpga开发还是嵌入式,软件设计你想做web开发,app开发,软件开发,嵌入式软件工程师,操作系统还是distributed system)。我个人是对两个大方向都很有兴趣,但是我决定自己最终的方向还是嵌入式设计和处理器设计,这两个行业都应该算是夹在了纯硬件设计和纯软件设计的中间。

尤其是产业对嵌入式工程师的要求更高,能够自己设计mixed signal pcb,自己调试应用代码写kernel code,能调试无线通信,基本意味着一个合格的嵌入式工程师要对硬件和软件相关方面有足够的知识

我自己是比较讨厌做web开发app纯开发软件的工作,因为这些工作的门槛太低,不是科班出身的人可能都能混的比你好得多,体现不出来自己的价值。而且我比较喜欢把电路板和各种元件握在手里的感觉,而且我发现自己能够设计一个可以用的硬件的时候那种成就感会高于debug之后的成就感。

当你发现自己在经受了大学的磨练真正拥有了学习知识的能力以后,丰富的网上资源以及自身的积累都会让你学习这些网页app知识非常轻松,所以我个人更喜欢硬件底层,以及和硬件底层打交道的软件领域。

软件硬件的课程都不会简单,而且两个学科的工作量不是其他学科能比的(学工科的天天做project呆lab,学统计的上完课就回家看电影。。)所以要想学好,还是需要花一定精力,尤其美国的大学工科院系workload相对国内高校来说有增无减。确定这是你想要的,再给予考虑。

嵌友们,看到这里,是不是也深表认同,自己也是这么看好嵌入式工程师前景的!

-END-

猜你喜欢

看完这篇文章,还不会做平衡小车,你来打我。

平衡小车PID,就该这么调!!!

再论PID,PID其实很简单。。。

最 后

若觉得文章不错,转发分享,也是我们继续更新的动力。

5T资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,PCB、FPGA、DSP、labview、单片机、等等

在公众号内回复「更多资源」,即可免费获取,期待你的关注~

长按识别图中二维码关注

硬件工程师和软件工程师哪个更有前途?相关推荐

  1. 假如有一次重来的机会,你选择做一位硬件工程师还是软件工程师?

    点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达 来源:半导体那些事儿 昨天晚上,在芯方式的一个微信群里,有位朋友抛出了这个话题,如果回 ...

  2. 现代hy-9600音响_从音响工程师到软件工程师-为什么我要学习编码

    现代hy-9600音响 by Kalalau Cantrell 通过Kalalau Cantrell 从音响工程师到软件工程师-为什么我要学习编码 (From Sound Engineer to So ...

  3. 嵌入式开发有年龄限制吗_嵌入式硬件工程师和软件工程师都有35岁的限制吗,有前辈能讲下吗?...

    汽车行业嵌入式软件工程师. 非系统性分析,只是说一下自己的观察: 身边看起来35岁以上软硬件工程师(非管理岗)都挺多(一半以上),应该不是未老先衰. 软件的话是因为团队大,所以35岁以上工程师也比较多 ...

  4. vivado和c语言开发,软件工程师也可以做硬件开发:软件工程师使用Vivado HLS的快速入门...

    HLS可以用于将C语言函数转换成硬件模块.这是一个革命性的工具,从此软件人员也可以创建硬件模块.下面从软件工程师的角度,介绍使用HLS创建硬件模块时的注意事项.为了避免重复,请先阅读UG871 < ...

  5. 硬件工程师和软件工程师相比,哪一个就业发展前景比较好呢?

    个人认为软件吧,软件是思想 边界无限,硬件是物质,专业分工受限.通常软件为硬件服务,同时受硬件限制,似管理者和受控对象.硬件的先进程度影响软件功能结构,二者互牵制.一个手机包含很多软件,但是须硬件支特 ...

  6. 嵌入式软件工程师是前端还是后端_嵌入式软件工程师与软件工程师的区别

    对于任何一个想在计算机领域内"一通百通"工程师而言,这恐怕是过不去一道思考题. 先从日常工作说起,嵌入式软件工程师每天的工作就是操作一些寄存器或看一些器件的操作的资料,实现一些功能 ...

  7. 算法工程师、软件工程师、大数据工程师的区别

    前段时间,有几个HR朋友问我: 算法工程师的日常工作到底是在干嘛? 平常看起来似乎还挺闲的,工资还那么高. 有时候算法工程师好像又和大数据工程师是一样的工作? 这到底是怎么回事呢? 大约整理出以下几个 ...

  8. 算法工程师、软件工程师、大数据工程师,傻傻分不清楚

    前段时间,有几个HR朋友问我: 算法工程师的日常工作到底是在干嘛? 平常看起来似乎还挺闲的,工资还那么高. 有时候算法工程师好像又和大数据工程师是一样的工作? 这到底是怎么回事呢? 大约整理出以下几个 ...

  9. 诚聘软件过程工程师,高级软件工程师,软件开发工程师

    绵阳铁牛科技有限公司(公司网址: http://www.sbuffalo.com/index.htm)诚聘以下职位人员,欢迎有志之士加入我们团队.如果您对下列某个职位感兴趣,请将您的简历发到公司的邮箱 ...

最新文章

  1. win7系统下载 ghost win7 Sp1 32位纯净3月版
  2. 【来龙去脉系列】.net分布式系统架构的思路
  3. 17章 SPI控制器(XIlinx ZYNQ-7000 SOC UG-585文档)
  4. 腾讯 AI Lab 正式开源PocketFlow自动化深度学习模型压缩与加速框架
  5. Python 生成器与列表解析
  6. 巧妙喝水打败多种疾病
  7. Linux 监控命令之 vmstat
  8. 水晶底是什么材质_都是红酒杯,水晶的和玻璃的有什么区别?
  9. (JAVA版)冒泡排序
  10. matlab中回归系数,最小一乘回归系数估计及其MATLAB实现
  11. 生成BAPI的ALE接口
  12. .net2005底层类
  13. TopJui 我踩的那些坑
  14. cascading 使用_欢迎使用Cascading 2.0 –减轻Hadoop困境的开源API
  15. apollo 阿波罗使用
  16. 嵌入式开发语言-C语言编程
  17. 程序员如何实现“互联网+”03-为什么需要有个网站
  18. 打工人息息相关的个税计算
  19. 利用tldr工具再也不怕记不住Linux命令
  20. 使用免费的CDN平台jsDelivr搭建个人cdn资源网盘

热门文章

  1. keil的debug使用
  2. 运行老项目报错 opensslErrorStack: [ ‘error:03000086:digital envelope routines::initialization error‘ ].....
  3. 海德汉仿真软件+海德汉西门子视频教程
  4. OpenWrt之配置无线中继(基于新三mt7621)
  5. NASA发布史上最深的宇宙全彩照!韦伯如何回传150万公里外的太空数据?
  6. 单位增益缓冲器的反馈路径中电阻的作用是什么?
  7. C++教程网 linux之miniShell的实战
  8. 且行且走(8月22日,23日)
  9. STM32F10x单片机Flash写操作导致中断不响应问题
  10. VLAN网络支持ipv6的交换机和虚机配置