数据来源:真实面经整理 | 版本:final
一、公司画像 & 校招节奏
追觅科技(Dreame Technology)成立于,总部苏州,上海设有研发中心。你可能对这个名字没那么熟,但你很可能在电商平台上见过它的扫地机器人——L10 Pro Ultra、X30系列,在欧洲亚马逊上卖得很好。估值超过400亿元,是一个真实在增长的独角兽。
有一个背景必须说清楚:追觅最早是小米生态链企业,有小米投资,但追觅是独立运营的,不是小米子公司。这个区别很重要——追觅有自己的品牌、自己的技术路线,不完全依赖小米渠道。
追觅的核心竞争力是自研高速数字马达,转速可达10万转/分钟。这不是噱头。马达是扫地机器人、洗地机的核心零部件,追觅用这个在全球高端清洁市场站稳了脚跟。技术路线延伸出去,SLAM导航(LiDAR + 视觉双SLAM)、AI地图管理、污渍识别……这些都需要真正的技术人才。
核心产品线:
| 产品 | 代表型号 | 技术特点 |
|---|---|---|
| 扫地机器人 | L10 Pro Ultra / X30系列 | 全球高端市场头部,LiDAR导航 |
| 扫拖一体机 | X40 Ultra / H30系列 | 多传感器融合,AI分区清扫 |
| 洗地机 | H系列 | 高速马达驱动,智能清洁 |
| 智能仓储机器人 | 布局中 | B端业务拓展,AGV方向 |
主要招聘岗位:
| 岗位 | 技术栈 | 招聘量 |
|---|---|---|
| 嵌入式软件工程师 | C/C++、RTOS、驱动 | 最大招聘量 |
| SLAM算法工程师 | C++/Python、LiDAR/视觉SLAM | 第二大方向 |
| 算法工程师(感知) | Python/C++、CNN、目标检测 | 第三方向 |
| 后端工程师 | Java/Go/Python、IoT平台 | 中等 |
| 前端/APP工程师 | Android/iOS、扫地机App | 小量 |
校招节奏(参考):
| 阶段 | 时间 | 行动建议 |
|---|---|---|
| 暑期实习 | 转正率较高,推荐提前准备 | |
| 正式网申 | career.dreame.com 或内推渠道 | |
| 技术面试 | 2-3轮技术面 + 1轮HR面 | |
| Offer发放 | 薪资有竞争力,对标中型互联网公司 |
追觅的工作节奏:不是BAT那种超高强度,也不是大国企那种慢节奏。创业公司文化,技术氛围活跃,项目推进快。如果你喜欢清洁机器人这个赛道,又有嵌入式或SLAM的技术背景,追觅是个值得认真考虑的选择。
二、岗位JD解析:技术要求拆解
追觅的岗位分化比较清楚,嵌入式和SLAM是两条几乎不重叠的备考路径,选对方向很重要。
嵌入式软件工程师(最大招聘方向)
这是追觅招人最多的岗位,也是门槛最高的方向之一——不是说LeetCode难,而是技术栈比较专,你得真的懂嵌入式。
| 能力维度 | JD描述 | 真实考察重心 | 备考权重 |
|---|---|---|---|
| RTOS | 熟悉实时操作系统 | FreeRTOS任务调度、优先级翻转及解决方案,几乎每次必问 | ⭐⭐⭐⭐⭐ |
| 电机控制 | 电机驱动经验 | FOC原理(Clarke变换+Park变换+PI控制),追觅自研马达的实时控制挑战 | ⭐⭐⭐⭐⭐ |
| C/C++嵌入式 | 熟练C/C++编程 | 中断服务程序设计、DMA传输、内存受限编程(禁用动态分配) | ⭐⭐⭐⭐⭐ |
| 硬件接口 | 熟悉外设接口 | UART/SPI/I2C/CAN/GPIO,实际项目中用到哪些要讲清楚 | ⭐⭐⭐⭐ |
| Linux驱动 | 了解Linux内核 | 字符设备驱动开发、设备树基础,加分项 | ⭐⭐⭐ |
特别说明:追觅的嵌入式岗不是普通MCU开发岗,是带实时控制需求的嵌入式。高速马达10万转/分钟意味着控制周期极短,对FreeRTOS调度的实时性要求非常高。面试时如果能聊到这个点,会很加分。
SLAM算法工程师(第二大招聘方向)
| 能力维度 | JD描述 | 真实考察重心 | 备考权重 |
|---|---|---|---|
| 激光SLAM | LiDAR定位建图 | GMapping/Cartographer/LIO-SAM原理,栅格地图的更新机制 | ⭐⭐⭐⭐⭐ |
| 全覆盖路径规划 | 清扫路径规划 | 螺旋式/行列式规划算法,房间分割,这是追觅独特考点 | ⭐⭐⭐⭐⭐ |
| 传感器融合 | 多传感器融合 | IMU+LiDAR融合、轮式里程计融合,误差状态卡尔曼滤波 | ⭐⭐⭐⭐ |
| 视觉SLAM | 视觉定位 | ORB-SLAM3原理,低光/地面约束等扫地机特殊场景 | ⭐⭐⭐⭐ |
| 动态避障 | 障碍物检测 | DWA(动态窗口法),实时性要求 | ⭐⭐⭐ |
特别说明:追觅SLAM岗的独特之处在于"扫地机场景"——这和自动驾驶SLAM不一样。扫地机在室内地面运动,有平面约束,激光雷达角度受限,还需要做全覆盖路径规划(确保每个角落都清扫到)。这些场景特有的问题,是面试常考点。
后端工程师(IoT方向)
| 能力维度 | JD描述 | 真实考察重心 | 备考权重 |
|---|---|---|---|
| MQTT协议 | IoT通信协议 | QoS等级(0/1/2)的区别,设备状态上报的设计 | ⭐⭐⭐⭐⭐ |
| 消息队列 | Kafka/RabbitMQ | 设备大量上报时的消峰削流设计 | ⭐⭐⭐⭐ |
| 时序数据库 | 设备数据存储 | InfluxDB/TDengine基础,为什么设备数据要用时序数据库 | ⭐⭐⭐ |
| 微服务 | 服务拆分 | 设备管理/用户管理/地图服务的拆分设计,接口设计 | ⭐⭐⭐ |
三、LeetCode高频题Top 20(真实面经数据)
追觅的算法题风格:难度以Medium为主,不追求Hard题,但对代码实现质量要求比较认真——不能只说思路,要真正写出来。另外有一个追觅特色:矩阵/网格类题目出现频率高,这和扫地机的地图处理场景相关。
第一梯队(必刷,几乎每场都会考)
| 题目 | 考察频率 | 追觅的考察重点 |
|---|---|---|
| No.206 反转链表 | ⭐⭐⭐⭐⭐ | 迭代+递归两种写法都要掌握 |
| No.102 二叉树层序遍历 | ⭐⭐⭐⭐⭐ | BFS基础,理解队列实现 |
| 快速排序(手撕) | ⭐⭐⭐⭐⭐ | 完整C++实现,分区逻辑清晰 |
| No.53 最大子数组和 | ⭐⭐⭐⭐ | DP基础,能解释状态转移 |
| No.48 旋转图像 | ⭐⭐⭐⭐ | 原地旋转,与地图坐标变换相关 |
第二梯队(高频,认真刷)
| 题目 | 考察频率 | 备注 |
|---|---|---|
| No.200 岛屿数量 | ⭐⭐⭐⭐ | DFS/BFS,与地图区域分割相关 |
| No.236 二叉树最近公共祖先 | ⭐⭐⭐⭐ | 递归理解,不要背答案 |
| No.215 数组中的第K大元素 | ⭐⭐⭐ | 堆排序或快速选择,两种都会 |
| No.15 三数之和 | ⭐⭐⭐ | 排序+双指针,边界条件容易出错 |
| No.146 LRU缓存 | ⭐⭐⭐ | HashMap+双向链表,工程设计能力 |
| No.54 螺旋矩阵 | ⭐⭐⭐ | 矩阵遍历,和扫地路径规划有隐含关联 |
| No.59 螺旋矩阵II | ⭐⭐⭐ | 生成矩阵,同上 |
| No.79 单词搜索 | ⭐⭐ | DFS+回溯,网格搜索 |
| No.130 被围绕的区域 | ⭐⭐ | DFS/BFS,封闭区域识别 |
| No.394 字符串解码 | ⭐⭐ | 栈的应用 |
第三梯队(中频,有时间刷)
| 题目 | 考察频率 | 备注 |
|---|---|---|
| No.42 接雨水 | ⭐⭐ | 单调栈或双指针,经典Hard |
| No.239 滑动窗口最大值 | ⭐⭐ | 单调队列,deque |
| No.56 合并区间 | ⭐⭐ | 排序后贪心,边界判断 |
| No.23 合并K个排序链表 | ⭐⭐ | 优先队列,分治 |
| No.155 最小栈 | ⭐⭐ | 辅助栈设计 |
| No.141 环形链表 | ⭐⭐ | 快慢指针 |
| No.300 最长递增子序列 | ⭐ | DP+二分优化 |
| No.1 两数之和 | ⭐ | HashMap基础,但概率较低 |
| No.21 合并两个有序链表 | ⭐ | 链表基础 |
| No.104 二叉树最大深度 | ⭐ | DFS基础 |
刷题策略:第一梯队5题做到闭眼能写,第二梯队重点刷矩阵/图相关(螺旋矩阵、岛屿数量系列),这是追觅的特色考点,和地图处理场景真的有关联。
四、技术面试考点
嵌入式系统专项(嵌入式岗,权重最高)
FreeRTOS与实时调度
这是追觅嵌入式岗的核心考察点,几乎每次面试都会深入问。
- 任务调度机制:优先级抢占调度(Preemptive Scheduling),高优先级任务就绪后立即抢占CPU
- 优先级翻转(Priority Inversion):这是追觅面试的高频追问。低优先级任务持有互斥锁,高优先级任务等待,中优先级任务抢占低优先级任务,导致高优先级任务反而比中优先级任务等更久
- 解决方案——优先级继承(Priority Inheritance):低优先级任务持锁期间临时提升到等待该锁的最高优先级
- FreeRTOS同步原语:队列(Queue)、信号量(Semaphore)、互斥锁(Mutex)各自适用场景
- 软件定时器:Tick计时机制,定时器回调在timer daemon任务中执行
一个面试常见追问:互斥锁(Mutex)和二值信号量(Binary Semaphore)有什么区别?答案是:Mutex有优先级继承机制,Binary Semaphore没有。
电机控制——FOC算法
追觅自研10万转高速马达,FOC(磁场定向控制)是必考点。
- 基本变换链:三相定子电流 → Clarke变换(αβ坐标系)→ Park变换(dq旋转坐标系)→ PI控制 → 逆Park → 逆Clarke → PWM输出
- 为什么用FOC:传统BLDC方波驱动有换相噪声和转矩脉动,FOC正弦波驱动更平滑,高转速时优势明显
- 追觅的实现挑战:10万转/分钟意味着电角速度极高,控制周期极短(通常要求10-20kHz的控制频率),对RTOS实时性要求严格
面试可能会问:FOC控制周期多少合适?为什么追觅的高速马达对控制实时性要求特别高?能说出来是加分项。
嵌入式C/C++编程规范
- ISR设计原则:中断服务程序要短而快,耗时操作放到任务中(通过队列或信号量通知)
- DMA传输:直接内存访问,绕过CPU做数据搬运,减少CPU占用,适合大块数据传输(如ADC采样、UART数据)
- 内存受限编程:嵌入式环境通常禁用动态内存分配(malloc/free),防止内存碎片;使用静态分配或内存池
硬件接口: - SPI:全双工,同步串行,适合高速外设(ADC、DAC、Flash) - I2C:半双工,低速,适合传感器(IMU、温度传感器) - CAN:差分总线,抗干扰强,适合电机控制器通信 - UART:异步串行,调试和低速通信常用
SLAM算法专项(SLAM岗,权重最高)
激光SLAM基础
- 扫地机LiDAR特点:和自动驾驶用的激光雷达不同,扫地机用的是2D LiDAR(TOF或三角测距原理),水平扫描,价格低,精度够室内使用
- GMapping:粒子滤波 + 占据栅格地图(Occupancy Grid Map),经典扫地机算法,计算量小,适合资源受限设备
- Cartographer:图优化方式,地图一致性更好,追觅高端产品线可能使用
全覆盖路径规划——追觅的独特考点
这是和其他SLAM岗最不一样的地方。自动驾驶是从A到B,扫地机是要覆盖每个角落。
- 行列式规划(Boustrophedon/Lawn Mower):一行扫完转弯扫下一行,效率高,适合开阔空间
- 螺旋式规划:从中心向外扩展,适合圆形/不规则区域
- 房间分割算法(Room Segmentation):先把地图分成不同房间,再分区域规划,避免跨房间污染
- 回边率(Coverage Rate):路径规划的核心指标,要求达到95%+
面试常问:行列式规划遇到障碍物怎么处理?如何判断一个区域已经覆盖到了?
传感器融合
- 轮式里程计(Wheel Odometry):扫地机特有,通过左右轮的编码器估计位移,累积误差大,需要和LiDAR融合纠正
- IMU+LiDAR融合:IMU提供高频姿态更新,LiDAR提供低频绝对位置,松耦合方式简单但精度有限
- 误差状态卡尔曼滤波(ESKF):比EKF数值更稳定,是传感器融合的主流方法
动态障碍物避障
- DWA(动态窗口法):在速度空间中采样可行速度,评估每个速度的安全性和目标朝向,实时避障
- 扫地机特殊场景:椅子腿、宠物、充电线,这些细小/细长障碍物用普通2D LiDAR很难检测,追觅用摄像头辅助识别
C/C++专项(全岗位通用)
嵌入式岗和SLAM岗都要考C++,但侧重点不同:嵌入式更重内存管理和中断设计,SLAM更重STL容器性能和多线程。
- STL容器选择:
vector(连续内存,随机访问快)vslist(频繁插入删除)vsdeque(两端操作) - 智能指针:
unique_ptr零开销独占,shared_ptr引用计数共享,weak_ptr避免循环引用 - 移动语义:
std::move避免不必要的拷贝,SLAM中点云数据量大,这个知识点会考 - 多线程:
std::thread+std::mutex+std::condition_variable基本使用,生产者-消费者模式
五、面经规律总结
面试风格:硬件感强,考察落地能力
追觅的面试和纯互联网公司有明显区别。每个技术问题背后,面试官都想知道:你真的在硬件上实现过吗?
不是说只能有硬件经历的候选人才能通过,但能把嵌入式知识和实际场景挂上钩的候选人,明显比只会背概念的候选人更受欢迎。
几个具体表现: - 讲RTOS,能聊到"扫地机控制循环的实时性约束"更受欢迎 - 讲SLAM,能聊到"室内地面平面约束怎么利用"比只背GMapping公式强 - 讲FOC,能解释"为什么追觅高速马达对控制周期要求这么严"比只说"Clarke变换"有说服力
五个高概率追问链
链条1:RTOS调度追问链 "FreeRTOS的调度机制是什么" → 追问:"优先级翻转是什么?" → 追问:"如何解决优先级翻转?" → 追问:"Mutex和Binary Semaphore有什么区别?"
链条2:FOC电机控制追问链 "FOC的基本原理是什么" → 追问:"Clarke变换和Park变换分别做什么?" → 追问:"PI控制器的参数怎么调?" → 追问:"追觅马达10万转对控制实时性有什么要求?"
链条3:SLAM建图追问链 "扫地机用的什么SLAM方案" → 追问:"GMapping用的什么原理?" → 追问:"栅格地图的分辨率怎么选?" → 追问:"LiDAR和里程计怎么融合?"
链条4:全覆盖路径规划追问链 "扫地机路径规划怎么做" → 追问:"行列式规划遇到障碍物怎么处理?" → 追问:"如何判断覆盖率?" → 追问:"多个房间怎么处理?"
链条5:C++内存管理追问链 "嵌入式环境下内存管理有什么注意事项" → 追问:"为什么避免动态内存分配?" → 追问:"内存池怎么实现?" → 追问:"FreeRTOS有没有内置的内存管理?"
加分项:理解追觅的产品背景
追觅的面试官大多数是工程师出身,对扫地机相关技术细节很熟悉。如果你能聊到以下几点,会明显加分:
- 了解追觅的技术布局:自研马达是核心竞争力,LiDAR SLAM让追觅产品站稳高端市场
- 了解行业痛点:扫地机的技术难点不是算法最先进,而是成本约束下的工程实现——LiDAR要便宜、处理器要省电、SLAM要在资源受限设备上实时运行
- 有相关项目经验:哪怕是课程项目,能讲清楚"我在STM32上实现了FreeRTOS的任务管理"或"我在ROS上跑过GMapping",都是实质性加分
笔试特点
- 题型:C/C++编程题2道 + 算法题1-2道 + 专业知识选择题
- 时间:左右
- 编程题难度:以Medium为主,注重代码完整性
- 专业知识题:RTOS基础、数据结构、基本数字电路(嵌入式岗);线性代数、概率论基础(SLAM岗)
- C++考察重点:指针、内存管理、STL容器,嵌入式岗还会考中断和DMA
需要避开的误区
误区1:以为追觅的技术门槛和纯互联网公司一样 追觅嵌入式岗是真的需要懂硬件,LeetCode刷得很好但RTOS和驱动完全不了解,会在第一轮技术面就被刷。
误区2:把SLAM当成纯算法题来准备 追觅SLAM岗考的不是BEV感知、不是Transformer,是激光SLAM和全覆盖路径规划,和自动驾驶AI公司的考察方向差别很大。
误区3:忽略扫地机场景特殊性 扫地机场景:室内、地面运动、有平面约束、需要全覆盖、LiDAR是2D的——这些特点决定了很多算法选择的原因,理解场景比背算法公式更重要。
误区4:对追觅的产品一无所知 提前用追觅的产品或者看几个评测视频,能在面试中展现出对具体应用场景的理解,这比干巴巴地背知识点更打动面试官。
校招节奏
总体原则
追觅的备考和大厂互联网公司有明显差异:嵌入式技术栈是核心,SLAM是第二条主线,LeetCode相对次要。不要把时间平均分配,要把火力集中在技术专项上。
| 阶段 | 时间 | 重点任务 | 每日投入 |
|---|---|---|---|
| 嵌入式C++ | FreeRTOS调度/中断设计/DMA/FOC电机控制 | 3- | |
| 算法专项 | 链表+二叉树+矩阵+图(BFS/DFS) | 3- | |
| SLAM基础 | 激光SLAM(GMapping/Cartographer)+全覆盖路径规划 | 3- | |
| 传感器融合 | IMU+LiDAR融合+卡尔曼滤波 | 3- | |
| IoT后端 | MQTT/消息队列/IoT设备管理(后端方向选修) | 2- | |
| 冲刺 | 追觅面经+系统设计(扫地机地图云端管理) | 2- |
每阶段详细任务
:嵌入式C++专项
- FreeRTOS:任务创建/删除/挂起/恢复的API,Queue/Semaphore/Mutex的使用,优先级翻转和优先级继承的详细原理
- 中断设计:上半部(快速响应,最小化操作)vs 下半部(tasklet/work queue执行耗时任务),ISR中禁止的操作
- DMA:DMA请求触发机制,双缓冲DMA设计,DMA传输完成中断处理
- FOC原理:Clark/Park变换推导,PI控制器参数意义,SVPWM基本原理
- 验收标准:能在纸上画出FreeRTOS优先级翻转的场景图,能解释FOC控制链路
:算法专项
- 反转链表/二叉树层序遍历/快速排序——每题手写3遍
- 矩阵系列:螺旋矩阵(54/59)、旋转图像(48)、搜索二维矩阵,这是追觅特色
- 图论:岛屿数量(DFS/BFS两种)、被围绕的区域、单词搜索
- 最大子数组和、LRU缓存
- 验收标准:第一梯队5题能在内写完,矩阵/图系列各刷一遍理解思路
:SLAM基础
- 激光SLAM:GMapping的粒子滤波机制,Cartographer的扫描匹配原理,栅格地图的概率更新
- 全覆盖路径规划:行列式规划的实现逻辑,遇到障碍物的处理,房间分割的基本思路,覆盖率评估方法
- 动态避障:DWA算法的速度采样空间,评估函数的三个分量(目标朝向、间隙距离、速度)
- ROS基础(加分项):如果有时间,了解ROS的节点/话题/服务机制,发布者/订阅者模式
- 验收标准:能解释GMapping的基本步骤,能画出全覆盖路径规划的示意图
:传感器融合
- 轮式里程计:差速轮模型,左右轮转速到线速度/角速度的换算,累积误差的来源
- 卡尔曼滤波基础:预测步骤(用运动模型更新状态)+ 更新步骤(用传感器测量修正),理解协方差矩阵的含义
- 误差状态卡尔曼滤波(ESKF):和标准EKF的区别,为什么更数值稳定,在SLAM中的应用
- IMU预积分:连续IMU测量在两个关键帧之间的积分,这是现代紧耦合融合的基础
- 验收标准:能解释卡尔曼滤波的预测-更新循环,能描述IMU+LiDAR松耦合融合的数据流
:IoT后端(后端方向选修)
- MQTT协议:发布/订阅模型,三种QoS等级的区别和适用场景(QoS 0丢弃、QoS 1至少一次、QoS 2恰好一次),客户端标识符和保持连接
- 大量设备上报的架构:Kafka做消峰,数据库选型(时序数据推荐InfluxDB/TDengine,状态数据推荐Redis+MySQL)
- 设备影子(Device Shadow):记录设备最新状态,解决设备离线时指令下发问题
- 验收标准:能描述一个扫地机从启动到上报地图数据的完整数据流
:冲刺
- 整理近3个月的追觅面经,总结高频考点
- 系统设计准备:扫地机地图的云端管理(用户多台设备同步、地图版本管理、地图数据压缩存储)
- 把自己的相关项目经历整理成"问题 → 方案 → 实现 → 效果"的叙述框架
- 模拟面试:把五个追问链各口头讲一遍,计时以内
最低备考标准(入场门槛)
嵌入式方向:
- [ ] FreeRTOS优先级翻转:能解释场景,说出优先级继承解决方案
- [ ] FOC基本原理:能说出Clarke/Park变换的作用和PI控制的角色
- [ ] 中断设计:能说出ISR上半部/下半部的分工原则
- [ ] C++内存管理:嵌入式环境下为什么禁用动态分配,替代方案是什么
SLAM方向:
- [ ] GMapping原理:能描述粒子滤波建图的基本流程
- [ ] 全覆盖路径规划:能说出行列式规划的基本思路和覆盖率评估方法
- [ ] 传感器融合:能解释IMU+轮式里程计+LiDAR松耦合融合的数据流
- [ ] 扫地机场景特殊性:能说出3个扫地机SLAM和自动驾驶SLAM的不同点
算法(全方向):
- [ ] 第一梯队5题能手写正确代码
- [ ] 螺旋矩阵/岛屿数量能流畅写出
祝你刷题顺利,成功拿到追觅的Offer!
📚 你可能还需要这些
其他机器人/嵌入式相关公司
如果你对机器人、嵌入式方向感兴趣,这些公司也值得关注: - 📌 地平线校招备考攻略(AI芯片+自动驾驶,算法岗的另一个选择) - 📌 Momenta校招备考攻略(自动驾驶SLAM,更偏向车端部署) - 📌 文远知行校招备考攻略(自动驾驶算法,侧重感知规划)
大厂嵌入式/IoT方向
- 📌 小米校招备考攻略(IoT生态,嵌入式+后端,追觅的同圈公司)
- 📌 华为校招备考攻略(嵌入式最大招聘方,技术考察最深)
算法题专项
- 📌 大厂笔试面试八股文——算法——数组常考题(矩阵操作高频题汇总)
- 📌 大厂C++技术面试常考题(嵌入式C++专项整理)
💡 关注我,备考少走弯路
我会持续分享: - ✅ 各大厂校招备考攻略(覆盖互联网、机器人、自动驾驶等方向) - ✅ 真实面经整理(第一手数据,按公司和岗位分类) - ✅ 技术专题拆解(RTOS、SLAM、嵌入式C++等细分考点) - ✅ 校招节奏提醒(不错过重要时间节点)
这篇攻略整理了大量嵌入式和SLAM的专业考点,如果对你有帮助: - 👍 点个"赞"和"在看",让更多备考的同学看到 - 💬 评论区聊聊你备考追觅的进度或问题 - 🔄 转发给一起备考机器人公司的朋友
有技术问题随时留言,我会尽量回复!
数据来源: - 追觅科技招聘官网岗位JD(-届) - 各求职平台追觅面经汇总整理(秋招-春招) - RTOS/SLAM技术文档及公开资料