AgiBot logo
智元机器人
机器人软件开发工程师

机器人软件开发工程师

发布于 大约 14 小时前

普通员工/个人贡献者

上海市
高级经验
全职员工
仅现场办公
硕士
软件工程
Cmake
Opencv
Pcl
Ros 2
多线程编程
机器人
网络编程

AI 估算 · 25k–45k

机器人行业高级C++工程师,上海地区,B轮中大型企业,薪资有竞争力,预估月薪25-45K。

职位详情

关于这个职位

作为端侧C++开发工程师,你将加入智元机器人的核心研发团队,深度参与具身智能机器人底层软件的设计与实现

工作涉及运动控制、传感器数据处理、通信协议栈等核心模块,每行代码都运行在真实硬件上,对机器人的性能与可靠性有直接影响

最低要求

计算机科学、电子工程、自动化、机械(机电方向)或相关专业,硕士及以上

C++ 扎实:熟练掌握 C++11/14/17/20 核心特性(移动语义、智能指针、模板编程、lambda 等),理解 OOP 与泛型编程思想,能写出符合现代 C++ 惯用法的代码
Linux 系统:熟悉 Linux 开发环境,具备 Shell 脚本编写能力,理解文件系统、进程模型、信号等基础系统知识
多线程编程:理解线程安全原则,熟练使用 mutex、condition_variable、atomic 等同步原语,能识别并解决死锁、竞态等并发问题
网络编程:理解 TCP/UDP 工作原理,熟悉 Socket 编程基础,了解 HTTP、WebSocket 等应用层协议
数据结构与算法:具备扎实的基础,能分析时空复杂度并在工程场景中做合理选型
工程工具:熟悉 Git 工作流(分支策略、PR/MR 流程),有 CMake 项目构建经验
强烈的工程责任心,对代码质量有自驱的高标准,具备良好的问题拆解能力,能在信息不完整的情况下推进调试
开放的沟通风格,乐于在代码审查中给出和接受直接反馈

工作职责

设计并实现机器人端侧核心模块的 C++ 代码,包括运动控制、传感器数据处理、通信协议栈等,追求高性能与长期可维护性

设计满足二开需求的SDK以及demo示例
在 Linux 实时/非实时环境下进行软件开发,负责多线程并发设计、内存管理及 CPU/内存性能瓶颈的定位与优化
参与底层系统架构讨论,负责模块接口设计,推动关键路径代码的性能分析(perf、valgrind、Sanitizers 等)
使用 Git 进行版本控制,积极参与代码审查,贯彻团队 Coding Style 与工程规范
搭建和维护 CMake 构建系统,参与 CI/CD 流水线的设计与改进
编写清晰的技术文档,包括模块设计文档、接口说明及问题排查指南
与算法、硬件、嵌入式、运控、测试等团队紧密协作,推动联调问题的快速闭环
持续跟进机器人领域前沿技术,将有价值的技术引入实际工程实践

优先资格

熟悉 ROS 2(生命周期节点、实时执行器、DDS 配置等)

有 Eigen、PCL、OpenCV 实际项目使用经验

AI 洞察

优缺点分析

优点

  • 技术栈前沿:现代C++、Linux实时系统、机器人领域前沿技术
  • 团队氛围:强调代码质量和工程规范,技术交流开放直接
  • 行业前景:具身智能是未来热点,公司处于B轮高速发展期
  • 技术门槛高:需要扎实的C++和系统编程功底,知识面广
  • 工作强度大:机器人项目联调周期长,可能出现高强度调试
  • 责任重大:代码直接影响硬件运行,容错空间小

缺点 / 挑战

  • 核心业务:直接参与具身智能机器人底层开发,技术挑战大,成长快
  • 适合对机器人技术有热情、享受底层系统编程挑战、追求代码高质量并愿意在多团队协作中成长的C++工程师

角色解读

  • 技术深化:成为机器人底层软件架构专家,主导核心模块设计
  • 跨界发展:向机器人系统架构师或算法工程方向转型
  • 管理路线:带领小型开发团队,负责项目技术决策
  • 编写机器人端侧核心模块的C++代码,涵盖运动控制、传感器数据处理和通信协议栈
  • 在Linux环境下进行软件开发,优化多线程并发和内存管理,确保系统高性能和可靠性
  • 参与底层架构设计,进行性能分析和代码审查,推动工程规范落地
  • 与算法、硬件、测试等多团队紧密协作,快速解决联调问题
  • 精通现代C++(C++11/14/17/20),掌握移动语义、智能指针、模板编程等
  • 熟悉Linux系统编程和多线程编程,能解决死锁、竞态等并发问题
  • 具备网络编程基础,理解TCP/UDP及Socket编程
  • 熟练使用Git、CMake等工程工具,有CI/CD经验更佳

申请策略

  • 了解智元机器人的产品方向(如人形机器人、具身智能),在面试中展现对其技术路线的认识
  • 准备一个过往最复杂的工程问题案例,清晰描述问题拆解和解决方案
  • 突出C++项目经验,尤其是涉及多线程、性能优化或嵌入式系统的模块
  • 展示Linux环境下的开发能力,如Shell脚本、性能分析工具使用
  • 如果有机器人相关项目(如ROS、运动控制),强烈建议体现
  • 强调代码规范意识,如参与代码审查、编写技术文档的经历
  • 如不熟悉ROS 2,建议系统学习其生命周期节点、实时执行器及DDS配置
  • 练习使用Eigen、PCL、OpenCV进行简单项目,增强加分项竞争力

面试指南

  • 对于技术问题:先阐述核心概念,再结合实际应用场景,最后总结优缺点
  • 对于工程问题:使用STAR法则(情境、任务、行动、结果),突出思考过程和量化成果
  • 对于软技能问题:强调主动沟通、透明协作和持续学习的态度
  • 请解释C++移动语义和完美转发的原理及使用场景
  • 在多线程环境下,如何设计一个线程安全的队列?
  • 描述一次你使用perf或valgrind定位性能瓶颈的经历
  • 你如何看待代码审查?如果同事的代码有严重问题但沟通困难,你会怎么处理?
  • ROS 2的实时执行器是如何工作的?与ROS 1相比有哪些改进?

职位点评

70
综合评分

前沿机器人底层开发,技术成长快,但工作强度大,WLB一般。

从薪资福利、成长空间、工作节奏和岗位方向综合评估,方便横向比较。

更适合这类人
适合高度重视技术成长、愿意接受高挑战强度、对薪资和WLB有一定容忍度的求职者。
表现最好
成长发展
相对薄弱
工作生活
薪资福利75
成长发展85
工作生活40
使命价值70

薪资福利

75中等

薪资处于市场较高水平(B轮中大型企业),且公司提供五险一金等基本福利,但JD未明确奖金、股票等,补偿性动机满足程度较好。

薪资信号未披露(AI估算:25K-45K/月)

成长发展

85较高

技术栈前沿(现代C++、机器人领域),团队强调代码质量和工程规范,有晋升空间(未明确提及但可推断),发展性动机满足度高。

技术前沿前沿/新兴技术
技术栈C++11/14/17/20、Linux实时系统、ROS 2、Eigen、PCL、OpenCV
业务类型profit_center

工作生活

40较低

仅现场办公,未提及弹性工作或远程,机器人行业调试压力大,WLB信号弱。

工作模式仅现场办公
办公地点市区核心地段
加班情况JD含高强度暗示词

使命价值

70中等

具身智能机器人行业处于高速增长赛道,对社会生产力有积极影响,但JD未明确使命感表述。

行业发展高速增长赛道
社会影响中性/一般
创新程度积极采用新技术
Watch Jobs