嵌入式职业规划

嵌入式类岗位大致分为以下几个类型:嵌入式软件开发工程师、驱动工程师、系统软件开发工程师、应用软件工程师、嵌入式测试工程师;还有一些:电子研发工程师、C/C++软件工程师(嵌入式)、智能驾驶软件工程师、机器人软件工程师、硬件产品经理等等。
1.1. 嵌入式软件开发工程师
A公司岗位描述:
1、负责设备软件的设计和交付,包括单片机嵌入式开发、DSP嵌入式软件开发、多线程多任务的动态调度、动态内存管理等软件关键技术研究;
2、负责设备软件研发及商用过程中的功能、性能、功耗、可靠性等问题的定位解决;
3、负责设备软件新技术的预研和产品实现,提升产品优势;
4、跟进行业新技术动态,参与新技术的研究,并能引入到产品开发中。
A公司任职要求:
1、熟练掌握汇编/C/C++编程语言和基本的常用数据结构,了解操作系统原理;
2、熟悉Linux系统编程,嵌入式系统,ARM或单片机,RTOS实时操作系统;
3、熟悉HTTP/TCP/UDP等网络协议,熟悉一种或以上接口协议优佳,如:USB、UART、Ethernet、PCIE、EMMC、I2C、SPI等;
4、有嵌入式系统或产品的开发项目经验优先;
小结:嵌入式软件开发工程师主要负责该部门嵌入式产品的研发工作,固件开发,单元测试,代码维护等,提升产品优势。很多公司都是大类嵌入式软件开发工程师,而不进行驱动、系统、应用工程师等区分。
1.2. 驱动工程师
B公司岗位描述:
1、负责底层驱动及上层应用的开发和调试,外设驱动的开发优化工作,比如Camera、LCD、Sensor等;
2、负责软硬件结合新器件技术预研和开发工作;
B公司任职要求:(与A公司要求相差不大)
C芯片公司驱动岗位描述:
1、设计和开发驱动程序(user mode, kernel mode, firmware etc),HAL/API,提供应用程序库的支持,提供包括内存管理,任务管理,硬件资源管理等功能;
2、建立驱动程序的开发环境,包括硅前和硅后测试和调试环境,以及相关驱动程序测试工具;
3、与硬件工程师和软件工程师协调提供解决平台中出现的问题。
C芯片公司任职要求:
1、精通C/C++编程,有Linux编程经验者优先;
2、熟悉计算机体系构架,算法设计等;
3、具备CUDA/OpenCL/GPU shader programming知识和经验者优先;
4、有较强学习新知识的能力;具备较强的沟通能力。
小结:驱动工程师主要是编写和移植各种芯片驱动,优化硬件设备驱动,一般驱动工程师指Linux上的驱动开发工程师,所以需要精通Linux驱动框架,结合芯片本身去编写驱动,所以芯片公司招聘嵌入式相关的岗位一般是驱动工程师。
1.3. 系统软件开发工程师
D公司岗位描述:
1、参与soc软件开发,包括soc bring up软件开发、IP驱动软件开发、bootloader软件开发、操作系统移植等;
2、参与soc 软件、硬件系统验证;
3、参与板级外设驱动软件开发与调试;
4、参与soc BSP 、soc SDK 软件开发、软件测试。
D公司任职要求: (与A公司要求相差不大)
小结:系统软件开发工程师主要是编写固件,需要熟悉整个操作系统组成与调度,对固件的稳定性高求很高,是驱动和应用的基础。
1.4. 应用软件工程师
E公司岗位描述:
1、负责嵌入式系统的搭建与维护,熟悉芯片驱动、嵌入式OS、SD接口定义;
2、负责软件系统的跨芯片移植(如:NXP系列、STM32系列);
3、负责系统集成以及调试工作;
4、负责进行嵌入式软件系统的应用开发、优化。
E公司任职要求: (与A公司要求相差不大)
小结:应用软件工程师主要是编写业务逻辑程序,调用驱动工程师提供的接口控制设备,软件开发过程所涉内容范围非常广,主要使用C语言开发,但经常会涉及其它语言、数据库、前端后台、各种通讯协议等。
1.5. 嵌入式测试工程师
F公司岗位描述:
1、负责嵌入式项目功能测试、性能测试、SDK测试或者自动化测试;
2、根据产品需求制定测试方案、设计测试用例,搭建测试环境;
3、依据测试用例完成产品的功能测试、硬件指标测试等,记录测试结果,报告与跟踪产品缺陷,并协助研发人员进行缺陷定位与重现;
4、编写测试报告,根据测试结果评估软件质量;
5、进行测试总结,编写测试相关文档,对测试中存在的问题及时分析与解决,并提出改进建议
E公司任职要求:
1、有嵌入式软件开发的经验优先;
2、有脚本语言(如python/shell)的使用经验;
3、有Linux下的自动测试和测试开发的经验;
4、熟悉嵌入式调试技术及工具;
5、具备良好的沟通表达能力,良好的分析解决问题的能力;
剩余的大佬面经总结了  链接在下边
全部评论

相关推荐

我发现很多朋友所认为的职业规划,是为自己确定一个非常具体的大目标(比如5年后要做到某某行业国内头部公司的总监职位),然后制定1年、3年、5年的阶段计划,设计每个阶段要达到的若干小目标,再配合这些小目标制定相应的行动方案。看上去很高大上,好像很有成果,但我个人觉得这完全不适合大多数人的实际情况,也很难有什么实际的效果。我给找我咨询的朋友们做的职业规划完全不是这样的。我的职业规划咨询里从来没有超过1年的计划,甚至超过1个月的都很少。我会更关注你当下遇到的问题、产生的困惑和下一步的行动(对,只有一步)。因为我发现,做时间跨度较长的规划,虽然你在做完的那一刻会有种:哇,好像很不错的感觉,觉得自己按照这个规划执行就一定能达到设定的目标。但现实情况根本不是这样的!一方面,在做规划的当下其实有很多外界因素的变化是我们没办法考虑到的,比如行业未来的发展、科技的进步、经济大环境的变化等等。你的规划时间跨度越长,这些方面的变化就越大,就像10年前我们根本想不到今天AI正在慢慢改变我们的工作方式。另一方面,随着你的人生经历越来越丰富,你个人内心的想法也会发生改变。可能今天你还很想在5年之后做到总监的位子,但有可能两三年以后你会发现总监的工作强度和生活状态并不是你想要的,当时只是被它的位高钱多所吸引,根本没意识到自己要付出的代价(或者当时觉得自己愿意承受这个代价但现在不愿意了)。另外还有非常重要的一点就是:别高估了自己的执行力。我运营的读书会每一期都不超过10天,也为大家制定好了每一天的读书计划,但最后能够完成阅读的人数比例平均也就在70%左右。更不要说你要坚持五年如一日地去严格执行自己设定的计划了。所以不如,着眼现在,专注当下。去发现自己当前遇到的真正困难究竟是什么,去分析自己为什么解决不了、卡点在哪里,去思考可以用什么方法解决这个问题、我可以立刻开始的行动是什么。我一直认为,真正的职业规划,不是帮助你去构建一个5年后的美好蓝图,而是去帮你真的看见自己眼前真实存在的一个个困难,并去脚踏实地地解决它们。你需要考虑的不是我5年后会怎样,而是我下一步要做什么。因为,只有你走好了你的下一步,下一步,再下一步,每一步都是你基于当下的感受踏踏实实走出来的,5年以后的生活才会是你真正想要的生活。#牛客激励计划# #牛客创作赏金赛#
点赞 评论 收藏
分享
03-31 11:53
已编辑
重庆工程学院 Java
点赞 评论 收藏
分享
评论
4
26
分享

创作者周榜

更多
牛客网
牛客企业服务