西门子嵌入式软件开发工程师
任职要求
• 计算机科学、电气工程、自动化或相关专业本科及以上学历。 • 3年以上嵌入式软件开发实际经验;精通C语言,熟悉ARM Cortex-M MCU,并具备嵌入式调试经验。 • 具备RTOS(如FreeRTOS)和常见通信协议(UART、SPI、I2C、Modbus等)的经验。 • 必须具备KNX的实际经验,具备BACNET实际经验者更佳。 • 具备网络安全和密码学应用开发实际经验者更佳。 • 熟悉嵌入式单元测试框架(如Ceedling、Unity)和静态分析工具(如SonarQube for C),并能够将其集成到CI工作流中。 • 具备强大的问题解决能力和创新思维,能够独立分析和解决复杂的系统问题。 • 出色的团队合作能力和有效的沟通技巧,能够与跨职能团队无缝协作。 • 良好的英语读写能力。 你将得到这些收获: • 丰厚的福利待遇,长期关怀的企业年金计划、灵活配置的商业保险、共同成长的员工股票计划等 • 系统化的职业发展平台,多方面的课程资源与发展工具,从自身优势出发,个性化定制你的成长路径 • 灵活的工作模式,使你保持韧性、与时俱进 • 多元包容的企业氛围,和欣赏的人做喜欢的工作 • 多种…
工作职责
加入西门子智能基础设施集团智能建筑事业部,成为零碳先锋,共创明日世界! 西门子智能基础设施集团 (Siemens Smart Infrastructure, SI) 的业务涵盖能源系统、楼宇和工业,旨在通过集成软硬件、产品、系统和解决方案,改善人们的生活和工作方式,显著提高效率和可持续性。我们致力于打造更低碳、更智能、更灵活的基础设施,在楼宇科技、智慧园区、数据中心等领域,都有我们成功的项目案例。 西门子智能建筑全球研发中心,位于高科技企业林立的北京市海淀区后厂村中关村1号地区,是西门子智能基础设施集团楼宇产品在亚太的研发中心,承担了智能楼宇产品全球研发任务。亚投行总部、水立方、国家速滑馆(冰丝带)、港珠澳大桥、上海环球金融中心、大兴国际机场等建筑里都使用了我们研发的产品。 我们期待擅长嵌入式软件开发的人才可以推动业务发展。 你将在这些领域发挥影响: • 作为嵌入式中小型项目的核心项目工程师。 • 全面负责软件开发生命周期,包括需求分析、设计、编码实现和系统测试。 • 参与软件模块调试和集成工作。 • 积极指导初级工程师,通过实际项目传授经验,提升他们的技术能力和项目管理视角。 • 积极与跨职能团队成员沟通协作。 • 落实产品对于安全性的各项需求,保证项目符合公司定义的产品安全各项流程标准。

1、模式切换逻辑设计与开发。负责自动驾驶模式(如自动驾驶、手动模式、紧急接管等)的切换逻辑设计与实现,确保不同驾驶模式间平滑、安全过渡。需结合车辆状态、传感器数据及系统冗余机制,制定模式切换规则,并优化实时性与可靠性,满足功能安全(ISO 26262)要求。 2、系统状态管理与故障处理。主导模式管理模块的系统状态监控,设计故障检测与冗余机制,处理异常模式切换场景(如传感器失效、通信中断等)。需与功能安全团队协作,开发故障降级策略,确保系统在极端场景下的鲁棒性。 3、多模块协同与接口开发。与感知、规划、控制模块深度集成,定义模式管理接口协议(如基于CAN、以太网通信),确保各模块在模式切换时的协同一致性。需熟悉AUTOSAR架构,主导中间件开发及模块间数据流优化。 4、复杂场景适配与性能优化。针对城市道路、高速路等复杂场景,优化模式切换的触发条件与响应速度。需通过仿真工具(如CARLA)和实车测试验证算法性能,分析极端工况下的模式切换失败案例(badcase),持续提升系统泛化能力。
在这里,您将和业界最优秀的软件工程师一起,研发处理高性能、低功耗、强稳定性的产品,您将接触到最先进的处理器,引领产品发展的潮流。 你将会: 1、负责终端软件的设计和交付,包括单片机嵌入式开发、DSP嵌入式软件开发、多线程多任务的动态调度、动态内存管理等软件关键技术研究; 2、负责终端软件研发及商用过程中的功能、性能、功耗、可靠性等问题的定位解决; 3、负责终端设备软件新技术的预研和产品实现,提升产品优势; 4、对外洞察学术界、工业界新方向,通过机器学习、大数据等行业新技术的探索,研究在产品化的应用,持续创新,孵化新技术,为产品创造核心价值。
工作范围 The scope of work - 嵌入式产品软件方案、软件详细等文档设计 - 软件程序设计、管理、测试与验证、软件发布管理 - 产品问题拉通、解决 主要工作职责 Major responsibilities - 与产品 FO 紧密协作,深入理解机械臂等的应用场景、性能指标等需求,共同完成功能方案设计,明确技术实现路径,确保方案的可行性与合理性,为后续开发奠定基础。 - 基于确定的功能方案,开展软件详细设计工作,包括架构设计、模块划分(如运动控制模块、传感器数据处理模块等)、接口规范制定等,输出详细的设计文档,指导编码工作。 - 负责换电站机械臂等嵌入式软件的编码工作,运用相关编程语言和开发工具,实现软件详细设计中的各项功能,保证代码的规范性、可读性和高效性。 - 进行软件调试,搭建调试环境,运用调试工具对编码完成的软件进行测试,排查并解决软件中的 bug,确保软件功能正常、性能稳定,满足设备的运行要求。 - 参与软件发布过程,制定发布计划和策略,配合相关团队完成软件的测试、验证等工作,确保软件顺利发布。同时,编写软件发布说明等文档,为后续的维护和升级提供支持。 - 跟踪已发布软件在实际应用中的运行情况,收集用户反馈和问题,进行分析和处理,持续优化软件性能和功能,提升设备的整体运行效果。 - 参与技术攻关,解决嵌入式软件开发过程中遇到的技术难题,推动技术创新和进步,提升团队的技术水平。 - 与硬件工程师、测试工程师等相关岗位人员保持良好沟通与协作,确保软硬件之间的兼容与配合,提高开发效率和产品质量。