原文链接: https://zhuanlan.zhihu.com/p/656952371
本人2022年4月和2023年7月两次跳槽找工作,面经总结在这里,希望可以帮到需要的朋友。
项目相关的问题主要和经历有关,参考性不大。
自动标注算法岗位
项目经历问的不深
coding两道题。
leetcode 55 跳跃游戏
。
NMS python
。
面试体验较差,不说了。
coding:买卖股票基础版
工作时间早十点,晚上八九点
第一轮:
项目问的比较细
几个公开数据集的lidar
区别,对点云、模型检测
的影响
domain adaption相关的方法,如何缩放点云
radar检测的具体优化。pointnet
和pointnet++
的区别
pnp calibration
栏杆检测为什么不用网络学习?
BN的mean和std的dimension,有哪些可学习的参数
,train和test的时候怎么用
coding:python 计算两批shape不一样的box的IoU。不用for循环。
numpy的broadcast
自认为有技术领先性
第二轮:
问的都是些比较抽象的问题
对视觉3d检测算法的了解。
举例工作中遇到的困难,(技术/项目),如何解决的
对之前公司的感知算法的问题,看法认识
对未来自动驾驶算法的看法
coding:未知形式的函数f(x),零点在[-1,1], 求零点,精度要求1e-4
纯纯八股文
c++语言特性,构造函数,析构函数
batch norm
是什么,原理
MLP是什么, 欠拟合
,过拟合
,
是否了解量化
,剪枝
目前是lidar为主,未来会加camera。
主要是做小型物流机器人。
在做安防机器人。
感知团队5-6个人,包括深度学习,slam。
上班时间10-7 。
大小周 周六上班。
没问什么技术问题,主要介绍下项目
要去合肥出差
工作时间:九点半到六点半
智慧城市
没问项目就开始coding
coding两道题:NMS
,用pytorch手写一个transformer
或者conv+bn+fc
第一轮:
项目问的很细
卡尔曼滤波Q和R怎么调
c++ 解释多
态,在哪些场景应用过
vector和list的差别,底层实现,各种操作复杂度
template是否算一种多态?如果不在.h里面定义他的函数,在.cpp里面定义会有什么问题?
公司的优势:软硬件一体,易于沟通解决问题
客户的不同硬件平台,不同的功能需求。
第二轮:
又问了些项目相关的问题。
一堆点,找最大凸包。无序的话 用什么排序?极点排序,最慢O(n^2)
第三轮:
现场面试
介绍下最有成就感的一个项目
。
coding:快排,时间复杂度为什么是O(NlogN)
c++ segment fault如何debug
vector 和list底层实现
,基础操作复杂度
问了些性格相关的问题
没有问八股,问了些大模型的较新的技术进展
llama,MAE,flamingo
transformer的encoder和decoder,position encoding,rope。
第一轮:
问了项目中涉及到检测跟踪
的算法
十几个人 四个方向。检测跟踪2个人,做手机相册相关算法
c++ vector底层实现,基本操作复杂度
,
虚函数,设计模式有哪些,用过哪些设计模式
第二轮:
yolov5,v6,v7
clip
有什么问题。为什么,适合什么场景
segement anything
:prompt如何输入进网络
认为自己擅长算法的哪些方面
有些算法是外包的,准备转为自研
泊车感知算法
传感器:超声波传感器和鱼眼相机
L2行车泊车。今年年中/年末交付
自动驾驶在内部相对独立。
图像感知在北京。
超声波传感器换了新版。输出的信息更多了,需要招人来。
国资背景
众包地图
上半年刚进行改革。压力比较小。
八小时弹性。无事不加班。
第一轮:
了解哪些目标检测算法,各自的优缺点
(anchor,anchor free,transformer
)
传感器标定是怎么做的
domain adaption怎么做的
描述两次代码重构的过程和思想
描述卡尔曼滤波的过程,具体如何解决问题的
后融合怎么做的,速度的gt如何得到
coding:dbscan
第二轮:
是否了解learning的tracking
?
是否了解sota的bev感知算法
是否能接受加班
– c++写的很多
coding;岛屿数量,延伸:如何统计不同形状的岛屿,如何对不同形状建模表示
描述下dbscan过程
c++ 为什么要用引用传参
目前lidar和融合一共20人
第一轮:
加班没有特别频繁。上海会新开office在虹桥/张江。
coding:快排
第二轮:
问的c++问题相对较难:
内存分配,内存池
野指针
,一般是什么情况下会产生,如何避免
- 智能指针
,如何实现一个shared_ptr类,各个成员函数什么时候调用,成员变量什么时候更新。
new一个新对象时候发生了什么,如何能只创建对象不分配空间?
调用一个派生类的构造函数时发生了什么?
自动驾驶support岗位,每周去车上测试一次
描述图像resize的过程并实现
c++编译出现undefined reference如何debug
迁移软件时,出现找不到的binary怎么解决
c++多态,虚函数,构造函数可以是虚函数吗,为什么
内存泄漏如何避免
c++模板,应用场景
智能指针,shared_ptr
, unique_ptr
指针和引用
external
感受野怎么算,如果有branch
描述NMS过程
yolo和ssd的box后处理的具体过程
transformer的self-attention过程
softmax为了让输出更稳定做了什么
ps:以下记录的公司相关的信息已经不太可信
·第一轮:·
pointnet input transform,feature transform·
coding 834. Sum of Distances in Tree hard,dp+2dfs
C++ set和ordered set底层实现,insert和erase的复杂度
第二轮:
英文自我介绍&几个简单的问题
主要问的tracking,ukf有没有用,具体的R如何根据mean和std调整
coding https://www.techiedelight.com/find-triplet-with-given-sum-bst/
bst遍历的时间复杂度,3sum用左右指针的时间复杂度:O(N^2)
第一轮:
pointnet input transform,feature transform
,
max-pooling可以用什么替代?
怎样可以降低nx1024的参数量?
batch norm解决了什么问题?有什么优缺点?需要学习哪些参数?还有其他什么norm?
L1和L2 regularization,什么作用,具体怎么实现的,什么区别,和weight decay什么关系
卡尔曼滤波器,P,Q,R怎么决定K和协方差阵的?
状态量在平面坐标系,观测量在极坐标系,效果不好?
coding 547
. Number of Provinces graph dfs
dfs的时间复杂度:O(N^2) 因为每个节点都要去遍历他的children,相当于两层循环
c++:
vector底层实现,空间是连续的吗?
vector变量存在堆上还是栈上?里面的每一个值存在堆上还是栈上?
unordered map和map,有序还是无序?底层实现,insert和erase的复杂度
第一轮
coding:DBSCAN
主要业务:智能座舱+自动驾驶
芯片:xinqing科技
感知主要是lidar和camera
去年(2021年)获得了hdmap甲级资质
第二轮:
radar 后融合 直接用cluster
偏向于lidar和camera
目前还在实现大部分功能
前装,乘用车,
主线:多V,多R,多lidar
高速+城区,逐步release
双休,九点半到八点,不打卡
徐汇滨江西岸
平台,系统更大,自动驾驶,芯片,智能座舱,
港股上市,
和tech lead面试的问题:
团队的组成?二十多个人做NN模型,研究生,平均四五年以上,大感知团队:有博士,
zhijia,小鹏,mmt,华为,
自己开发的训练模型的平台,pytorch。
平时有发paper或者刷榜的计划安排吗? 会和平时的工作相结合,互相验证。
比较看重员工的什么能力?技术能力,沟通。创造力。
做到25年的规划。
23年单V落地。
主要客户:泊车,adas,吉利汽车下面的。还有一些联合开发。
一轮技术面:
更复杂的tracking算法。
传感器raw data。
前融合。
freespace 用雷达
视觉->系统供应商->雷达
毫米波雷达感知七八个人,还有信号处理,一共100多人。华为,美团,江淮。
hr面试:
工作时间 九点半,五点半/六点半。双休,没有打卡
毫米波雷达感知七八个人
同一批人做量产/预研
中级/高级差不多各一半。
总监 工作了十几年。比较平衡。
有mentor
张江
ukf
,
除了hm
之外的其他匹配算法
观测和预测的相似度计算
PQR
都是怎么设置的
单例模式和工厂模式的区别
L2,L3,adas功能实现,主要在底特律
尝试前融合,目前是用原始radar detection和vision
4d radar 从硬件到软件
初创公司
有期权
乘用车
公司名字可能会改,四月份确定
项目制,
马上要A轮
在新江湾城
第一轮:
卡尔曼滤波,
怎么用同一个filter同时适配车辆横穿的场景
感受野计算。
centernet等基于center的recall不够高,有什么办法来改善
做二分类,有80%的数据是标注正确的,20%是标注失败的,如何训练?
anchor-base
和anchor-free
的优劣;
如果anchor-based的方法,设置很多不同的anchor,对于非正常宽高比的物体以及小目标会有改善吗,除了计算速度以外会有什么其他问题
c++11之后的新特性有没有用过
智能指针
void test (const std::vector<shared_ptr<xxx>>& aaa){
aaa[0].b += 1;
}
编译能不能通过
std::vector generate()
和 void generate(std::vector*)
哪个效率高一般是第二个效率高,因为函数返回值默认会赋值一份空间,除非编译器有做return value optimization
单例模式的实现:static、全局变量、指针判断(默认是空,每次用的时候判断是不是空,空就创建一个)
coding
:二叉树的直径 543
上海这边一共50人,感知6~7个人
,
大家同时做几个产品线,通用算法
毫米波雷达和视觉相关都有
第二轮:
coding:105. 从前序与中序遍历序列构造二叉树, 7. 整数反转
环卫车项目,要在广州2个月左右,目前是二三十个人,主要是基于已有的融合,tracking框架加入环卫车特有的一些规则
后面稳定下来后可以参与感知算法
面试官是radar负责人
7,8点下班
coding:区间合并 56
目前毫米波雷达只有两个人
背靠吉利,在供应商面前占有强势地位,有conti的4d radar在手
目前可以拿到传感器目标级和点云级的输入
毫米波雷达在高速上比较重要,未来会扩展城区场景
主要来自蔚来,华为
第二轮:
面试官是感知负责人
感知包括定位等,一共目标一百六七十,
感知算法,目标检测这边目标八九十。
前融合,feature级别的融合
量产 要求较高
最终目标是城区场景
目前是装的eq5
也会涉及到lidar,融合等算法
九点半之前上班。
第一轮:
-coding:number of islands
-unorder_map map区别,unique_ptr
int const * const x; const放在*右边,指针的指向不能改,这一行第一个const也可以放到左边,const int也不能改
int * const y; 指向int的const指针,int值可以改,指针指向的地址不能改
const int& i = *y; i的值不能改,read only
int& j =*y; j是别名,可以改,改了的话y指向的变量也会改
毫米波雷达感知只有美国一个人,国内十几个人在做autox自己的雷达。
也会做和camera,lidar的融合
第二轮:
卡尔曼滤波器,要是系统不是线性的会产生什么问题?
ekf是怎么解决不是线性的问题的?
-匈牙利匹配是一个全局最优的,有没有试过其他的匹配方法
`第一轮:
coding:https://leetcode.com/problems/binary-tree-maximum-path-sum/
问了ssd,yolov3,centernet
第二轮:
是否了解radar如何测角测速
`coding:无序数组,选三个连续子数组,每个子数组都是两个元素,求这三个子数组的和的最大值
用前缀和思想+
也会做和lidar,camera的融合,
有不同的项目线,基本上用同样的code base,自己决定做哪个项目
算法迭代需求主要来自于路测问题和evaluation结果
evaluation工具比较完善
主要在北京,一共30, 感知5-6个人,前融合
coding:实现shared_ptr
两个bst,各选一个数,加起来等于target
第一轮:
重卡,物流运输,
干线物流+港口物流:L4,无安全员。
北京:港口,L4前瞻调研,lidar和vision提供general感知,地图等。300人。
按照博世系统来,
上海:算法十个人,平均工作五年以上
去年(2021年)九月份成立,主要是为了高速干线物流量产,落地,合作商用oem top2,radar后融合with lidar和vision,环境搭建,会来一位大佬,做过前后融合,目前没有人做radar,打算招7~8个人。目前是用目标级输出,未来用点云。50人->100人。算法三十人。
第二轮:
先做后融合,
当前是L2
第三轮:
日- 常的工作的大概内容?
路测数据,主导开发的原则,
比较看重员工的什么能力?
背景,学历,个性。
主要是Apollo系统,
组织架构合理,有凝聚力
毫米波雷达+融合。
嘉定安亭。上海汽车城大厦。九点到六点半。十一点半到一点午休。没有打卡。
第一轮coding: 54. 螺旋矩阵
感知15个人,lidar,camera,radar,
干线物流,城市货运,乘用出行三个场景,从城市场景开始做?
做一个统一的平台,优先做robotaxi。然后做robo bus
园区L4无人小巴,计划六月份在上海公共道路
robotaxi已经有公司在做了,和友商比较的核心竞争力是什么?域控,有自己的gpu,不用ipc
团队完整,资金足够,王京傲的影响力。
自驱力,自我成长,团队合作精神。
代客泊车和自动驾驶
第二轮
有多个项目
5R + 1V
5R + 7V
5R + 7V + 3L
一个人会参与多个项目
上海这边感知4/5个人
第一轮:
澳洲上市的外企
主要工作:数据预处理,后处理,算法开发。
上海有两个分部:local和global。这个岗位负责global业务,准备招4~5个人
流程:本地验证,和annotator合作验证,跑过线上ab test,由engineer部署。
第二轮:
coding:两个排好序的数组,找公有元素。
Product quantization (PQ)
问了概率计算,sample数据实现。
个人的优缺点
主要客户:Google,Apple,
coding:number of islands
量产由其他team负责,这个team负责预研及量产。
点云和图片的区别
pointnet为什么没有用conv?
focal loss的参数如何调
有哪些loss
anchor free和anchor based的区别
anchor-free的target assign是怎么做的,怎么解决多个目标中心点位置比较靠近的问题?
centernet网络输出是什么
描述卡尔曼滤波器
如果分类问题中几个类别有overlap怎么办,如何设计网络结构
是否了解mmdetection的hook
如果需要在mmdetection中加一个backbone,需要改哪些代码?
coding:二叉树中序遍历,不用递归
第一轮:
数据,标注,感知,后处理,工程
15个人,点云特征,十点-八点
第二轮:
准备单独上市,去年(2021年)刚成立,准备从100人扩张到200人
目前有五家公司在谈合作。
先做国内再做国外
算法:感知10人->20人。
主要做L4 taxi,L2,L2++,芯片
目前主要在高速场景
老板郭济顺
客户稳定,传统tier1,有积累,有资源,70%业务来自于国外
第二轮:面试官以前在上汽,主要做视觉感知,七八年
上海office在莘庄。莘学路。 两栋楼。
有食堂。
九点-五点。