上个月在某次会议中遇到了 Tenux 开源社区的负责人,有幸跟他探讨了嵌入式行业的过去、现在和未来。该社区目前致力于 µT/OS V3.0 系统的开发和推广工作,µT/OS 其实也就是 μTenux ,它的内核源于1984年的 TRON 操作系统。其中,十分有感触的是,他说,在上世纪八九十年代的时候,日本人已经在思考32位单片机应该用什么样的操作系统的问题,而我们当时思考的是8位单片机应该用汇编语言还是C语言。

诚然,由于历史原因,我国在很多方面都落后于发达国家,包括嵌入式方面,我不知道经过了这么多年的发展之后,我们和发达国家的差距是缩小还是增大了。但根据我的一些学习和工作经历,我发现不管是学校还是企业,不管是新人还是老员工,都有相当一部分人忽视了一些东西——包括为什么要学嵌入式?为什么要做程序员?为什么要学习?为什么要做产品?我觉得这其中的原因有很多,例如:教育和产业发展的脱节、企业管理方式落后、工程师的视野不够开阔等等吧。

这些问题要是展开来说就真的三天三夜都说不完,也许是因为我们习惯了稳定,习惯了封闭,习惯了按部就班… 当然,也不单只是中国有这样的问题,就像龙应台说的那样:社会就像一个巨大的开动着的车,总有人在里面自顾自地行乐,所幸的是,总有人探出头来看看这辆车究竟在往哪里跑。

是的,每个时代都有思考和不思考的人。希望未来有更多热爱思考的嵌入式工程师,用我们的才华构筑更好的社会。以下内容精选自与非网,个人认同其中大部分观点,故收录之,希望有更多的人受益。

想做个成功的嵌入式系统工程师吗?这些建议你要看一看 >>

从更熟悉以开放源码软件来开发应用程式(Apps),产业专家鼓励嵌入式工程师走出舒适圈、学习新技能,才能与时俱进。

回顾1980年代的嵌入式领域,当时的工程师主要是设计混合讯号电路、连接微控制器、撰写低阶编码、从外面拿回产品原型…只要一个工程师就能做好以上所有事情。但是现在,嵌入式系统变得更大、更复杂,一台装置可能有数百万行软件程序码;嵌入式技术也被区分为硬件开发、固件开发与软件开发。

在很多大公司仍然是如此,但趋势似乎又有回头的迹象;有越来越多业者开始整合工程师的角色,寻找既熟悉软件也熟悉硬件技术的工程师,以求事半功倍之效。调查显示,现在有越来越多工程师的工作同时牵涉硬件与软件技术。

有越来越多工程师需要软硬件技术能力兼备

嵌入式技术日进千里,工程师要如何确保自己学习到的新技术是最关键的?为此EETimes美国版请教了九位嵌入式领域专家与一位负责招募人才的主管,请他们分享究竟现在的嵌入式工程师最需要掌握哪些重要技能;虽然他们的意见稍有不同,但都同意一个观点:所有的工程师都不应该停止学习。

以下是整理专家意见,归纳出的十个给嵌入式工程师的建议:

1. 学习那些让英特网实现的技术

具备30年嵌入式工程师经验的独立产品设计与顾问公司 Aurium Technologies 总经理 Ken Wada 认为,多数嵌入式领域工程师都知道如何撰写 C 或 C++ 语言程式,但有时候这样的技能是不够的;他建议嵌入式工程师学习英特网有关的技术,对职业生涯发展会有加分效果,例如他目前负责的几个开发案,都是在嵌入式系统中嵌入虚拟(virtual)的 XML,好让一些小型连网装置能具备“随插即用”的运作模式。

2. 学习利用搜寻引擎

当了35年工程师、自认是“看得懂系统架构的软件人”的 PTR Group 首席科学家 Michael Anderson 认为,不要闭门造车,要善用开放源码世界的资讯,很多常见的设计问题其实透过英特网就能找到同领域菁英贡献的程式码;嵌入式工程师们要走出自己的小世界拥抱社群,与同领域的其他工程师们相互交流、互相帮助,而这也是开放源码世界的精神。

3. 离开舒适圈!

虽然只当了18年工程师、但自认是系统与软件技术“通才”的 DSP 与嵌入式软件开发顾问公司 Jetperch 创办人 Matt Liberty 建议,不断更新并提升原本擅长的技术虽然很重要,但嵌入式工程师若能扩展自己的知识领域会更有益。走出舒适圈,挑战自我、去学习原本不熟悉的东西,包括工程以外的知识,例如与客户、同事之间的互动,将会收获良多。

4. 熟悉即时操作系统(RTOS)

在工程人才招募机构 Randstad Technologies 负责嵌入式产业领域的解决方案经理 Henry Wintz 表示,目前产业界对于熟悉 RTOS 的工程师需求很高,也愿意提供更高的薪资水准;因此他鼓励没有接触过 RTOS 的嵌入式工程师从一些较小型的系统着手,累积相关技术经验。此外他也发现产业界对嵌入式 Linux 人才有不少需求,主要是因为这种操作系统具备较大的设计弹性。

5. 培养多元化技能与系统观

担任近20年工程师、具备许多不同领域技术经验的技术顾问公司 Rebelbot 顾问 Jen Costillo 建议,原本从事较小型系统架构(例如 MCU)开发的工程师,可以开始去熟悉更大的系统(例如 Linux 驱动程式),反之亦然。尝试着去开发手机应用程式、或者是学习后端服务器的相关技术,能让你开启完全不同的观点;他并建议工程师去熟悉开放性硬件,现在市面上有不少现成的开发板,能让工程师专注于学习独特演算法的开发。

6. 了解软件也要了解最新的处理器

有超过15年嵌入式软件工程师经验的 Embedded.fm 工程师 Elecia White 表示,除了要深入了解 C 或 C++ 等基本程式语言,有时也要认识一些热门的新程式语言以因应特殊设计需求,但更重要的是了解最新的处理器技术;处理器才是嵌入式系统的本质。因为我们的系统资源有限,我们需要了解可用的资源有哪些。

7. 要能熟悉开放源码软件

拥有31年工程师经验的 Freescale Semiconductor 数位网路全球软件开发部门总监 Rob Oshana 表示,客户往往会要求在系统中整合一大堆软件,因此所有的嵌入式工程师需要熟悉各种软件;他建议工程师避免只专长单一领域,因为那可能会阻碍你的成长。对嵌入式工程师来说,确保自己对软硬件技术都很了解,是非常宝贵的价值。

8. 建立系统级的工程思维

自诩为高信赖度嵌入式系统专家、担任了15年工程师的 E2V 电子系统总工程师 Adam Taylor 认为,嵌入式工程师拥有系统导向的思维是很重要的,有不少开发案遇到问题,就是因为没有在开发初期充分考量基准、验证策略以及相容性验证计画等项目;此外每个嵌入式工程师都应该具备优良的专案管理技巧,力求准时完成负责的专案。具备能明智因应技术与专案风险的能力,对职业生涯发展会很有帮助。

9. 要能明确表达自己的想法与意见透过文字或绘图

Micrum 总裁 Jean LaBrosse 认为,无论是哪一种工程师,都需要能有效表达自己的想法与意见;往往有些菜鸟工程师无法清晰表达自己的想法,因为抓不到重点,而最好的解决方法是练习将之图形化,例如画出流程图。这听起来好像有点过时,但有时利用各种图框组合来整理自己的思绪、表达想法会是很有用的,例如 iPad 的 iThoughts 应用程式。

10. 学习无线连接技术

自认是低阶嵌入式工程师、有13年工作经验的 iRobot 资深首席软件工程师 Chris Svec 建议,嵌入式工程师需要在接下来1~3年学习无线连接技术,特别是 Wi-Fi 与蓝牙低功耗(BLE);因为现在的嵌入式装置(至少各种消费性装置都是)与使用者智慧型手机连结的主要(或唯一)方式,就是透过这些无线技术,虽然 Wi-Fi 与 BLE 不一定会是嵌入式系统的标准配备,但熟悉这些技术对嵌入式工程师来说会很实用。

做个成功的嵌入式系统工程师相关推荐

  1. 嵌入式系统工程师的职位要求,你还差多少?

    转载地址:http://bbs.ednchina.com/BLOG_ARTICLE_3022630.HTM?click_from=8800022839,4950442636,2014-07-24,ED ...

  2. 嵌入式系统工程师知识面的宽度、深度、高度

    要成为优秀的嵌入式系统工程师,其知识面要有宽度.深度.高度. mingdu.zheng at gmail dot com https://blog.csdn.net/zoomdy/article/de ...

  3. 纯软件程序员向嵌入式系统工程师转型时需注意的问题

    纯软件程序员向嵌入式系统工程师转型时需注意的问题 在中国,PC(主要是Windows-Intel体系)软件开发程序员,也就是"纯软件程序员"的"黄金年龄段"较短 ...

  4. 嵌入式系统工程师 的职位要求

    嵌入式系统工程师 的职位要求 嵌入式系统工程师职位要求: 1.计算机应用.自动化.通信或相关专业学士或硕士学历:如为应届生要求在校期间有实际相关工作经验: 2.精通Vxworks操作系统内核程序设计: ...

  5. 软考嵌入式系统工程师的十大建议

    **软考嵌入式系统工程师的十大建议** 摘要:嵌入式的定义是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能.可靠性.成本.体积.功耗等严格要求的专用计算机系统.要成为一名出色的嵌入 ...

  6. 嵌入式系统工程师必须更聪明地工作

    From:http://blog.mcuol.com/User/msnssmm/Article/7575_1.htm 就在不久以前,我房地产界的好朋友Kirk阅读了Tracy Kidder的<新 ...

  7. 10年老兵!从大学毕业生到嵌入式系统工程师的修炼之道……

    点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达! 一名从事10多年嵌入式行业的老兵,用多年来从事这个行业的经验及独特视角,为想从事嵌入 ...

  8. 如何成为一名嵌入式系统工程师

    嵌入式系统软件工程师是泛指那些从事嵌入式系统软件领域工作并掌握了该领域基本知识和专业基础的职业技术人员.就一位嵌入式系统软件工程师而言,用人单位会特别关注你在该领域中所具备的特定的职业技能,比如你所擅 ...

  9. 软考嵌入式系统工程师知识点整理(嵌入式操作系统)

    嵌入式系统的特点: 以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能.可靠性.成本.体积.功耗等严格要求的专用计算机系统 任务间同步机制有: 信号量 事件 信号 操作系统的文件系统的 ...

最新文章

  1. leetcode算法题--分隔链表
  2. Spark Streaming(三)zookeepe搭建
  3. 发送临时文件被服务器拒绝,临时会话说服务器拒绝了您发送离线文件的请求 - 卡饭网...
  4. 数据加密:RSA 密钥
  5. jq 正则判断邮箱_Python正则15分钟入门
  6. ORA-01427: 单行子查询返回多个行 出现原因及对应防止措施
  7. HTML5离线存储 初探
  8. 软件质量保证与测试(秦航第二版)第二章
  9. 前端开发_开发软件Hbuilder简介
  10. MATLAB中如何取整
  11. 用Labelmx条码生成器批量打印条形码
  12. HikariCP配置手册
  13. python爬楼梯递归_爬楼梯(Python3)
  14. 【独行秀才】macOS Big Sur 11.6.5正式版(20G517)原版镜像
  15. mysql phpwind_linux下的PHP+Mysql+PHPWind实现
  16. amis eureka_如何构建量身定制的amis来升级您的基础架构
  17. 基于微信小程序的疫情智慧社区管理系统 计算机毕业设计 后台管理系统
  18. 爬虫实战—拿下最全租房数据 | 附源码
  19. 为2020年的第一场雪锦上添花:用 matplotlib 绘制雪花和雪景
  20. 计算机考研英语自我介绍范文,考研复试英语自我介绍范文

热门文章

  1. RT-Thread:让W25Q128、U盘、SD卡同时搭载文件系统
  2. 程序员不要太过于看重编码技巧,相比而言思想更重要
  3. elasticsearch7.9操作必看结合官方文档 es head的操作必看 es增删改查全详解
  4. 微信、QQ等第三方账号登录的具体思路
  5. 北大igem生物计算机,喜讯|北京大学iGEM团队在国际大赛中取得金牌
  6. Python爬取20778套深圳二手房并数据分析
  7. matlab saveas使用报错:错误使用 matlab.graphics.internal.name (line 101)
  8. Superset搭建
  9. TLM通信 — UVM
  10. 2019新型冠状病毒来势汹汹我们无需恐慌(可防可控),但也不得不防(存在的“人传人”的风险)