数据来源:真实面经整理 | 版本:final
一、公司画像 & 校招节奏
公司基本情况
优必选科技(UBTECH Robotics)成立于,总部在深圳,是国内最早专注人形机器人研发的公司之一。在香港联交所主板上市,股票代码9880.HK,成为港股人形机器人第一股。
核心产品线分三个方向:
人形机器人:Walker X和Walker S是主力工业机型。Walker S已经进入吉利汽车工厂做质检,蔚来工厂也有部署。这不是PPT上的演示,是真实跑在产线上的商业落地。
教育机器人:Aelos系列面向中小学STEM教育,Jimu系列主打积木式编程机器人。这条线已经有成熟的销售渠道和营收。
AMR(自主移动机器人):面向仓储和工厂物流场景,独立产品线。
上市之后,优必选的体系比未上市时更完善——薪资结构透明,期权兑现有清晰时间表,合规要求也更严格。
校招节奏(届)
| 阶段 | 时间 | 说明 |
|---|---|---|
| 暑期实习 | 投递,实习 | 部分转正名额,含技术类岗位 |
| 秋招网申 | 正式开放 | 官网 career.ubtrobot.com |
| 技术面试 | 通常2-3轮技术面 + 1轮HR | |
| Offer发放 | 部分岗位提前批在出Offer |
优必选的校招规模不算大,每年全公司校招人数在百人量级,技术岗竞争激烈程度比BAT略低,但岗位数量也少,命中率并不高。建议海投时把优必选放在机器人/智能硬件公司的第一梯队。
核心招聘岗位
- 运动控制算法工程师:C++/Python,需要有控制理论或机器人学基础
- 感知算法工程师:计算机视觉,3D感知方向为主
- AI工程师(具身智能方向):LLM集成、强化学习、Sim-to-Real
- 嵌入式工程师:C/C++,实时系统,对硬件底层有要求
- 后端工程师:Python/Go,机器人云端服务和数据平台
二、岗位JD解析:技术要求拆解
运动控制算法工程师
这是优必选最核心的技术岗位,门槛也最高。JD里通常会提到:
硬技能要求: - C++熟练,性能敏感代码有实际经验 - 了解刚体动力学或多体动力学 - 接触过全身运动控制(WBC)或MPC的优先 - 有MuJoCo、IsaacGym等仿真平台使用经验加分
软技能信号:JD里说"了解人形机器人运动控制挑战",实际意思是——你需要知道ZMP是什么,知道脚底接触力怎么建模,知道为什么Walker在工厂里走路是个难问题。
AI工程师(具身智能)
这个方向是优必选近两年重点扩招的方向,和LLM的结合是重点。
核心要求: - 强化学习基础,PPO/SAC要会推导 - 了解Sim-to-Real迁移的常见方法(Domain Randomization等) - 有LLM应用开发经验(Tool Calling、Agent框架) - Python熟练,PyTorch为主
常见误区:很多同学以为AI工程师只需要会调大模型API,但在机器人公司,这个岗位的核心挑战是"如何让LLM的输出变成机器人的可执行动作"——这需要你同时懂语言模型和运动规划。
嵌入式工程师
- C语言扎实,熟悉实时操作系统(RTOS)
- 了解CAN总线、EtherCAT等工业通信协议
- 驱动开发或传感器接口有实际经验
三、LeetCode高频题Top 20(真实面经数据)
优必选面试的算法题整体难度在Medium为主,Hard题偶尔出现。面试官更关注你的代码质量、边界处理和解题思路,不会强求最优解,但一定要写出可运行的代码。
第一梯队:必刷(几乎每轮必考)
| 题号 | 题目 | 考察方向 |
|---|---|---|
| No.206 | 反转链表 | 链表基础,递归+迭代都要会 |
| No.102 | 二叉树的层序遍历 | BFS基础,返回二维数组注意格式 |
| 手写 | 快速排序 | 手写实现,注意partition边界 |
| No.53 | 最大子数组和 | 动态规划基础,Kadane算法 |
| No.146 | LRU缓存机制 | 数据结构综合,HashMap+双向链表 |
备考重点:LRU是优必选面经出现最频繁的设计题,要求手写完整实现。时间复杂度O(1)的写法(哈希表+双向链表)必须烂熟于心。
第二梯队:高频(大概率出现)
| 题号 | 题目 | 考察方向 |
|---|---|---|
| No.21 | 合并两个有序链表 | 链表操作,迭代写法更稳 |
| No.236 | 二叉树的最近公共祖先 | 树的递归,分情况讨论清楚 |
| No.215 | 数组中的第K个最大元素 | 快选/堆,两种解法都要掌握 |
| No.15 | 三数之和 | 双指针,去重逻辑是难点 |
| No.1143 | 最长公共子序列 | 二维DP,状态转移要写清楚 |
| No.3 | 无重复字符的最长子串 | 滑动窗口模板题 |
| No.42 | 接雨水 | 双指针or单调栈,理解原理 |
第三梯队:中频(有一定概率)
| 题号 | 题目 | 备注 |
|---|---|---|
| No.200 | 岛屿数量 | DFS/BFS,图论入门 |
| No.94 | 二叉树中序遍历 | 迭代写法(栈模拟)必须会 |
| No.121 | 买卖股票最佳时机 | 贪心,DP写法也要知道 |
| No.560 | 和为K的子数组 | 前缀和+哈希表 |
| No.739 | 每日温度 | 单调栈经典题 |
| No.297 | 二叉树的序列化与反序列化 | 设计题,面试常出 |
| No.72 | 编辑距离 | 二维DP,LLM方向面试偶有出现 |
| No.23 | 合并K个升序链表 | 优先队列,堆的应用 |
| No.46 | 全排列 | 回溯模板,路径+选择 |
| No.124 | 二叉树中的最大路径和 | 树形DP,后序遍历 |
算法备考建议:优必选的算法题不卷,但对代码工程质量有要求——变量命名规范、注释清晰、边界case考虑周全。Medium题目写完之后,主动告诉面试官时间复杂度和空间复杂度,以及还有没有优化空间。
四、技术面试考点
C++深度考察
优必选的C++面试有几个必考点,不准备到位基本过不了技术一面。
多态原理(高频)
虚函数、虚函数表(vtable)、虚指针(vptr)是必考三件套。面试官会问:
- "派生类对象的内存布局是什么样的?"
- "虚析构函数为什么必要?"
- "CRTP(奇异递归模板模式)和虚函数多态有什么区别,分别适用什么场景?"
CRTP在实时控制代码里用得很多(避免虚函数调用的运行时开销),在机器人公司面试里出现频率比一般互联网公司高。
智能指针(高频)
shared_ptr的引用计数机制、weak_ptr解决循环引用、unique_ptr的移动语义——要能讲清楚实现原理,不只是会用API。
多线程与并发(高频)
// 这类问题在控制系统里很实际
// 面试官可能会问:如何设计一个线程安全的任务队列?
std::mutex mtx;
std::condition_variable cv;
std::queue<Task> task_queue;
// 要能说清楚:为什么用condition_variable而不是忙等?
// 虚假唤醒(spurious wakeup)怎么处理?
性能优化
内存对齐(alignas、alignof)、缓存行(cache line)友好的数据结构设计——在实时控制代码里这些不是面试题,是真实问题。面试官如果问"你写过性能敏感的C++代码吗",要能举出具体例子。
具身智能方向(优必选特色考点)
这是和一般互联网公司面试差异最大的部分。
LLM集成到机器人
面试官喜欢问的开放题:"如果让LLM控制机器人完成'去厨房拿一杯水'这个任务,你会怎么设计架构?"
标准答案框架: 1. LLM负责任务理解和高层规划(把自然语言指令分解成子任务序列) 2. Tool Calling接口定义(moveArm、graspObject、navigateTo等原子动作) 3. 低层控制器负责具体执行(运动控制、力控) 4. 反馈回路:执行状态反馈给LLM,遇到异常重新规划
强化学习基础
PPO(Proximal Policy Optimization)是人形机器人训练最常用的算法,面试至少要能说清楚: - Clip目标函数为什么能稳定训练 - Actor-Critic架构 - 奖励函数设计的难点(reward shaping)
Sim-to-Real迁移
"仿真里训练好的策略为什么在真机上不好用?"——这是面试必问问题。
核心方法:Domain Randomization(随机化仿真环境的物理参数,如摩擦系数、质量分布、传感器噪声),让策略学会在不确定性下鲁棒运行。
运动控制专项
即使是AI方向的候选人,优必选面试也可能涉及基础运动控制概念:
ZMP(零力矩点)稳定性:双足机器人保持稳定的核心指标,ZMP需要在支撑多边形内部。
MPC(模型预测控制):在有限时间域内求解优化问题,实时性要求高。线性MPC在步态规划里应用广泛。
全身运动控制(WBC):层次化二次规划,同时优化多个约束(接触力、关节限位、任务目标),是Walker系列机器人运动控制的核心技术。
如果你的背景是纯软件,这部分不需要深入,能说清楚基本概念和挑战就够了。如果投运动控制算法工程师,这部分要深入准备。
感知专项
3D点云处理:PCL库基础操作、点云滤波(VoxelGrid、PassThrough)、法向量估计、ICP配准。
6D姿态估计:机器人抓取的核心问题,估计目标物体的三维位置+三维姿态。GraspNet、FFB6D等方法要了解基本原理。
手眼标定:相机和机械臂末端的坐标变换关系,Eye-in-Hand和Eye-to-Hand两种配置要知道区别。
五、面经规律总结
根据整理的优必选面经,总结出以下规律:
面试轮次结构
通常是2-3轮技术面+1轮HR面:
- 技术一面:算法题(1-2道)+ C++基础 + 项目深问
- 技术二面:系统设计 + 领域专业问题(运动控制/感知/AI)
- 技术三面(部分岗位):高阶技术讨论,通常是组长或总监
- HR面:职业规划、薪资预期
项目追问套路
优必选面试官非常喜欢追问项目细节,典型问法:
- "你说做了强化学习项目,奖励函数怎么设计的?遇到什么问题?"
- "Sim-to-Real有做过吗?迁移效果怎么样?怎么量化的?"
- "C++项目里有没有做过性能优化?具体优化了哪里,怎么测量的?"
准备建议:每个项目准备好"项目背景→你的具体贡献→遇到的最难问题→怎么解决→结果是什么"的完整叙述,不要只背结论,要能讲出过程中的取舍和挣扎。
商业化导向的考察
作为已经有工厂落地案例的公司,优必选面试官会考察你对工业场景可靠性的理解:
- "Walker在汽车工厂做质检,对可靠性有什么要求?如何保证?"
- "机器人在工厂场景里发生故障怎么处理?如何做降级策略?"
这类问题没有标准答案,考察的是你的工程思维——是否考虑过故障模式、是否有容错设计意识。
优必选面试风格特点
- 问题有深度:不满足于"知道",要求能讲清楚"为什么"和"怎么实现"
- 开放题比例高:算法题之外,开放性技术讨论占比不小
- 重视具身智能视野:会判断你对这个方向的热情和理解深度
- 对实际项目经验敏感:有真实机器人项目经验的候选人明显加分
校招节奏
根据优必选的考察重点,建议如下备考节奏:
:C++深度强化
目标:把C++的核心原理讲清楚,不只是会用API。
每天重点: - :内存模型(栈/堆/BSS段)、new/delete的底层实现 - :虚函数/vtable/vptr,手画派生类内存布局 - :智能指针实现原理,手写简化版shared_ptr - :std::thread/mutex/condition_variable,线程安全队列实现 - :CRTP模式、模板元编程基础、constexpr
验收标准:能给面试官画出一个有虚函数的派生类的完整内存布局,能手写线程安全的任务队列。
:算法专项
目标:把高频题目写熟,重点保证代码可运行。
- :链表专题(206、21、23、LRU全部手写一遍)
- :二叉树专题(102、94迭代、236、124)
- :动态规划(53、1143、72、121)
- :双指针+滑动窗口(3、15、42)
- :图论+单调栈(200、739、297)
建议:不要只是看懂,要手写。LRU要默写到每次都能在内写完。
:具身智能专项
这是优必选和其他公司差异最大的备考方向,要认真准备。
- :强化学习基础(Q-Learning → Policy Gradient → PPO推导)
- :Actor-Critic架构,PyTorch手写简单RL训练循环
- :仿真平台(MuJoCo/IsaacGym基本概念,看官方文档和Demo视频)
- :Sim-to-Real迁移方法,Domain Randomization原理与实践
- :LLM+Tool Calling在机器人任务规划中的应用,准备一个完整的架构设计方案
:运动控制基础
目标:能在面试中对这些概念做出合理的解释,不要求推导细节。
- :刚体动力学基础,齐次变换矩阵,正/逆运动学
- :ZMP稳定性分析,支撑多边形概念
- :MPC基本框架,线性MPC求解流程
- :WBC(全身运动控制)的层次化架构
- :步态规划基础(CPG、swing/stance相位切换)
关键提示:如果投的是AI方向,可以压缩,把时间挪给。
:感知与抓取
- :3D点云处理,PCL常用操作,深度图和点云的关系
- :6D姿态估计基本方法,GraspNet论文基本思路
- :手眼标定(Eye-in-Hand vs Eye-to-Hand),视觉伺服控制基本概念
:冲刺整合
- :过一遍优必选面经,把出现过的问题逐一核查自己是否能回答
- :系统设计专项——设计一个工厂机器人质检系统的软件架构(从传感器输入到决策输出的完整链路)
- :模拟面试,限时完成一道LRU + 一道项目讲述,录音回放检查表达是否清晰
附录:优必选面试常见开放题
以下是整理的高频开放题,建议每道题都准备3-的回答:
-
"你怎么看待人形机器人在未来5年的商业化前景?有什么核心技术挑战?"
-
"LLM作为机器人大脑有什么优势和局限性?你会如何解决实时性问题?"
-
"如果一个机器人在工厂执行任务时遇到没见过的情况,应该如何设计它的行为?"
-
"Sim-to-Real迁移为什么难?你会用什么方法缩小仿真和现实的差距?"
-
"强化学习训练人形机器人行走,奖励函数怎么设计?你会考虑哪些因素?"
这类问题考察的不是标准答案,而是你的系统性思考和对领域的真实理解。准备的时候不要背答案,要真正想清楚,能举出具体例子或引用真实技术细节。
特别说明:优必选是一家真正在做人形机器人商业落地的公司,Walker在吉利、蔚来工厂的部署是有据可查的事实。如果你对具身智能方向有真实兴趣,面试前花时间看优必选的技术博客和官方视频,这种真实的兴趣面试官能感受到,是加分项。