Aller au contenu Aller au pied de page

嵌入式软件开发工程师

ID de l'offre
505753
Publié depuis
17-Mar-2026
Organisation
Industries numériques
Domaine d'activité
Recherche et développement
Entreprise
Siemens Ltd., China
Niveau d'expérience
Débutant
Type de poste
Temps plein
Modalités de travail
Au bureau / sur site uniquement
Type de contrat
Contrat à durée déterminée (CDD)
Lieu
  • Chengdu - Province du Sichuan - Chine
嵌入式固件工程师
在这个岗位中,你将参与工业级嵌入式产品的核心软件研发,面向高可靠、高实时性和高可维护性的应用场景,推动产品能力持续演进。你将与跨职能团队协作,基于 Embedded Linux 与 RTOS 平台开展固件设计、开发与优化工作,参与关键功能从需求定义到最终交付的完整过程,为产品竞争力和客户价值创造提供技术支撑。
岗位职责
1. 负责嵌入式产品固件的设计、开发、调试与维护,包括底层驱动、系统模块及应用功能的实现与集成。
2. 基于 Embedded Linux 和 RTOS 平台开展软件研发工作,完成需求分析、技术方案设计、编码实现、调试验证及问题定位。
3. 参与通信相关软件模块的设计与开发,支持系统配置、功能集成、联调测试及版本交付。
4. 参与产品全生命周期开发过程,包括需求评审、架构设计、开发实现、测试支持、缺陷修复及量产导入。
5. 持续优化系统在稳定性、实时性、可靠性和可维护性方面的表现,提升整体软件质量与交付效率。
6. 与硬件、测试、产品及其他相关团队紧密协作,推动关键技术问题分析与解决,支持产品持续演进。
7. 遵循规范化的软件开发流程,持续实践代码质量管理、单元测试、静态分析和版本管理等工程方法。
任职要求
1. 本科及以上学历,计算机、电子工程、自动化、通信工程或相关专业。
2. 具备扎实的 C/C++ 编程基础,具有良好的编码习惯、调试能力和问题分析能力。
3. 具备嵌入式软件开发经验,熟悉 ARM 等主流嵌入式平台的软件开发流程。
4. 熟悉 Embedded Linux 或 RTOS 中至少一种开发环境,并具备实际项目经验;同时具备两类平台经验者更佳。
5. 理解嵌入式系统关键机制,包括任务调度、内存管理、中断处理、线程同步及实时性优化。
6. 具备驱动开发、板级软件开发或软硬件联调经验,熟悉常见外设接口及调试方法。
7. 熟悉常见通信协议和网络基础,如 TCP/IP、UDP、SSL/TLS 或串行通信等。
8. 熟悉 GNU 工具链、交叉编译、调试工具及 Git 等常用开发环境。
9. 具备良好的软件工程意识,了解 Clean Code、单元测试、静态代码分析等开发实践。
10. 具备良好的学习能力、沟通协作能力和结果导向意识,能够在团队环境中高效推进工作。
优先条件
1. 具备 Embedded Linux 与 RTOS 双平台开发经验。
2. 具备通信协议、网络功能模块或实时应用相关开发经验。
3. 有驱动开发经验,熟悉 PHY、UART、SPI、I2C、Ethernet MAC 等常见硬件接口。
4. 熟悉二层或三层网络协议,如 ARP、ICMP、TCP、UDP 等。
5. 具备工业通信、工业控制或高可靠嵌入式系统开发经验。
6. 有管理型交换机、路由器、PLC 控制器或类似产品固件开发经验者优先。
7. 熟悉 Modbus、PROFINET、EtherCAT、S7 等工业协议者优先。
8. 具备英文技术文档阅读能力或国际化团队协作经验者优先。

Embedded Firmware Engineer
We are looking for an Embedded Firmware Engineer with solid technical fundamentals and strong engineering discipline to join our R&D team. In this role, you will contribute to the development of core software for industrial-grade embedded products, working across Embedded Linux and RTOS platforms. You will be involved in the design, implementation, integration, and optimization of low-level drivers, system modules, and communication-related software, collaborating with cross-functional teams to deliver reliable and high-quality products.
Key Responsibilities
Design, develop, debug, and maintain embedded firmware for products, including low-level drivers, system modules, and application-level functionalities.
Work on software development across Embedded Linux and RTOS platforms, covering requirements analysis, technical design, implementation, debugging, validation, and issue investigation.
Develop and integrate communication-related software modules, and support system configuration, feature integration, system testing, and release delivery.
Participate in the full product lifecycle, including requirement review, architecture design, development, defect fixing, test support, and production ramp-up.
Continuously improve system stability, real-time performance, reliability, and maintainability to enhance overall software quality and delivery efficiency.
Collaborate closely with hardware, test, product, and other cross-functional teams to analyze and resolve technical issues and support product evolution.
Follow structured software development practices and contribute to code quality, unit testing, static analysis, and version control processes.
Qualifications
Bachelor’s degree or above in Computer Science, Electronic Engineering, Automation, Communication Engineering, or a related field.
Strong programming skills in C/C++, with good coding practices, debugging skills, and problem-solving ability.
Hands-on experience in embedded software development, with familiarity in software development on mainstream embedded platforms such as ARM.
Experience with at least one embedded operating environment, either Embedded Linux or RTOS; experience with both is a plus.
Good understanding of core embedded system concepts, including task scheduling, memory management, interrupt handling, thread synchronization, and real-time optimization.
Experience in driver development, board support software, or hardware-software bring-up and debugging.
Familiarity with common communication protocols and networking fundamentals, such as TCP/IP, UDP, SSL/TLS, or serial communication.
Familiarity with GNU toolchains, cross-compilation, debugging tools, and common development tools such as Git.
Good software engineering mindset, with understanding of practices such as clean code, unit testing, and static code analysis.
Strong learning ability, communication skills, teamwork, and a results-oriented approach.
Preferred Qualifications
Experience with both Embedded Linux and RTOS platforms.
Experience in communication protocols, networking modules, or real-time application development.
Experience in driver development for common hardware interfaces such as PHY, UART, SPI, I2C, and Ethernet MAC.
Understanding Layer 2 or Layer 3 networking fundamentals and protocols such as ARP, ICMP, TCP, and UDP.
Experience in industrial communication, industrial control, or other highly reliable embedded systems.
Experience in firmware development for managed switches, routers, PLC controllers, or similar industrial devices.
Familiarity with industrial protocols such as Modbus, PROFINET, EtherCAT, or S7.
Ability to read English technical documentation and work in an international collaboration environment.