跳到主要内容

如何成为优秀的嵌入式工程师

Embedded Engineer Hazal Yüksel

图:Hazal Yüksel(via)(article

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

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

1. 学习一些互联网相关的技术

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

站长建议:嵌入式开发和 Web 开发有很多不一样的地方,物联网(IoT)正是它们的交汇点。

2. 学习利用搜寻引擎

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

站长建议:多用 Google 和 GitHub 搜索,并且使用英文关键字搜索。

3. 离开舒适圈!

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

站长建议:努力做个一专多能的 T 型人才。

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

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

站长建议:未来几十年,RTOS 和 Linux 仍是嵌入式和物联网领域非常重要的一部分,掌握这些技术不愁找工作。

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

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

站长建议:这个世界永远都缺优秀的复合型人才,物联网融合了硬件、软件、机械、架构、系统、艺术、人文等多个学科和领域,充满了机遇与挑战。

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

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

站长建议:技术的发展无时无刻都在进行,对新的技术和模式要保持空杯心态。(Stay hungry, Stay foolish.)

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 不一定会是嵌入式系统的标准配备,但熟悉这些技术对嵌入式工程师来说会很实用。

站长建议:一定要掌握 Wi-Fi 和 BLE,它们在物联网中的应用非常广泛。