职位描述岗位概述 作为端侧 C++ 开发工程师,您将加入核心产品研发团队,深度参与具身智能机器人底层软件的设计与实现。您的工作将直接决定机器人的运动控制精度、感知响应速度和系统整体可靠性——这里没有边缘业务,每一行代码都跑在真实的硬件上。 主要职责 核心开发 1. 设计并实现机器人端侧核心模块的 C++ 代码,包括机器人状态机、传感器数据处理、数据采集、通信协议栈等,追求高性能与长期可维护性; 2. 在 Linux 实时/非实时环境下进行软件开发,负责多线程并发设计、内存管理及 CPU/内存性能瓶颈的定位与优化; 工程规范 1. 使用 Git 进行版本控制,积极参与代码审查,贯彻团队 Coding Style 与工程规范; 2. 编写清晰的技术文档,包括模块设计文档、接口说明及问题排查指南; 协作与成长 1. 与算法、硬件、嵌入式、运控、测试等团队紧密协作,推动联调问题的快速闭环; 2. 持续跟进机器人领域前沿技术,将有价值的技术引入实际工程实践。 任职要求 学历与专业 1. 计算机科学、电子工程、自动化、机械(机电方向)或相关专业,硕士及以上。 技术能力(必须) 1. C++ 扎实:熟练掌握 C++11/14/17 核心特性(移动语义、智能指针、模板编程、lambda 等),理解 OOP 与泛型编程思想,能写出符合现代 C++ 惯用法的代码; 2. Linux 系统:熟悉 Linux 开发环境,具备 Shell 脚本编写能力,理解文件系统、进程模型、信号等基础系统知识; 3. 多线程编程:理解线程安全原则,熟练使用 mutex、condition_variable、atomic 等同步原语,能识别并解决死锁、竞态等并发问题; 4. 网络编程:理解 TCP/UDP 工作原理,熟悉 Socket 编程基础,了解 HTTP、WebSocket 等应用层协议; 5. 数据结构与算法:具备扎实的基础,能分析时空复杂度并在工程场景中做合理选型; 6. 工程工具:熟悉 Git 工作流(分支策略、PR/MR 流程) 素质要求 - 强烈的工程责任心,对代码质量有自驱的高标准; - 良好的问题拆解能力,能在信息不完整的情况下推进调试; - 开放的沟通风格,乐于在代码审查中给出和接受直接反馈。 加分项(有以下经验者优先) 1. 熟悉 ROS 2(生命周期节点、实时执行器、DDS 配置等) 2. 了解机器人运动学/动力学基础:坐标变换(TF)、正逆运动学、轨迹规划 3. 熟悉常见软件设计模式(观察者、状态机、工厂等)并有工程应用 承担主要目标/关键任务 核心开发 1. 设计并实现机器人端侧核心模块的 C++ 代码,包括机器人状态机、传感器数据处理、数据采集、通信协议栈等,追求高性能与长期可维护性; 2. 在 Linux 实时/非实时环境下进行软件开发,负责多线程并发设计、内存管理及 CPU/内存性能瓶颈的定位与优化; 工程规范 1. 使用 Git 进行版本控制,积极参与代码审查,贯彻团队 Coding Style 与工程规范; 2. 编写清晰的技术文档,包括模块设计文档、接口说明及问题排查指南;