史上最全自动驾驶岗位介绍

作者 | 自动驾驶转型者  编辑 | 汽车人

原文链接:https://zhuanlan.zhihu.com/p/353480028

点击下方卡片,关注“自动驾驶之心”公众号

ADAS巨卷干货,即可获取

点击进入→自动驾驶之心【求职交流】技术交流群

本文只做学术分享,如有侵权,联系删文

1.背景

近日分享如何高新转型到自动驾驶领域时,几位朋友不约而同的问到了我同一个问题:“L2~L4自动驾驶的岗位都有哪些?对应着具体的什么 工作内容?需要哪方面的技能?”今天就针对这个大家都很想了解的话题做个分享。

首先介绍下自动驾驶的系统框图(简化版)让大家对自动驾驶有个全局的概念

a82b1acc5a034a28fef811a52a20fed4.png
  • 接下来,我们分为两大类进行介绍:算法工程师和非算法类工程师。

  • 算法工程师

  1. 激光SLAM算法工程师

  2. 视觉SLAM算法工程师

  3. 多传感器融合算法工程师

  4. 机器学习算法工程师

  5. 计算机视觉算法工程师

  6. 自然语言处理算法工程师

  7. 决策算法工程师

  8. 规划算法工程师

  9. 控制算法工程师

  • 非算法类工程师

  1. 软件平台开发工程师

  2. 系统工程师

  3. 功能安全工程师

  4. 标定工程师

  5. 仿真环境工程师

  6. 测试工程师

  7. 数据工程师

  8. UI开发工程师

  • 下面详细介绍每个岗位的工作职责和需要学习的内容

2.算法工程师

2.1.激光SLAM算法工程师

239ade03e77aa345bb5c7d3283a3d370.png
  • 岗位介绍:

  • 采集激光传感器数据,根据点云数据对自动驾驶车辆的周围环境进行地图构建。

  • 负责实现基于激光传感器的SLAM算法设计和开发,能够覆盖各种复杂场景的高精度地图更新和制作。

  • 技能要求:

  • 使用c、c++编程;

  • 需要有滤波算法知识:ESKF、EKF、UKF等;

  • 同时需要学习G2O、ceres等用来优化非线性误差函数的c++框架。

  • 熟悉开源SLAM框架,如GLoam、kimera、VINS等优先;

2.2.视觉SLAM算法工程师

ce268d9b7309e3400cffc24ec6bdde43.png
  • 岗位介绍:

  • 以VSLAM为基础,研发机器人自主导航定位算法,包括基于激光雷达、陀螺仪、里程计、视觉等多信息融合,构建机器人运动模型

  • 技能要求:

  • 学习常用的VSLAM算法,如ORB-SLAM、SVO、DSO、MonoSLAM,VINS以及RGB-D等;

  • ROS机器人操作系统;

  • 需要有滤波算法知识:ESKF、EKF、UKF等;

  • 同时需要学习G2O、ceres等用来优化非线性误差函数的c++框架。

2.3.多传感器融合算法工程师

b2b7aa09ac5c6054d57e77a6a47f20c7.png
  • 岗位介绍:

  • 将相机、激光雷达、毫米波雷达等多传感器的信息处理和融合,提高自 主驾驶车的环境感知能力;

  • 负责基于多源信息融合的目标检测、跟踪、识别与定位;

  • 负责基于多源信息融合的环境特征抽取,为地图构建提供支持;为基于基于多源信息融合的导航定位提供支持。

  • 技能要求:

  • 掌握camera、毫米波雷达、激光雷达、惯性导航等相关数据解析融合算法;

  • 计算机信息科学、电子工程或数学相关专业本科及以上学历,具备扎实的计算机理论基础

  • 精度相机模型、多视觉几何、Bundle Adjustment 原理,有SfM、几何测距等项目经验

  • 精通C/C++,熟悉Matlab,良好的面向对象编程思想和编码习惯

  • 熟悉IMU、GPS、DR等惯导定位算法框架

  • 熟悉IMU、GPS、车身系统原理、硬件特性、标定算法

2.4.机器学习算法工程师

  • 岗位介绍:

  • 该方向主要负责车辆行驶过程中产生的数据在工程上的应用,偏向于数据分析方向,如车辆行驶里程的影响分析、大数据分析建模等等。

  • 技能要求:

  • Python,C/C++

  • 学习机器学习的基础理论算法,如 LR、GBDT、SVM、DNN等等;

  • 学习scikit-learn 等传统机器学习框架的模型训练;

  • 熟悉 PyTorch、TensorFlow等深度学习框架(偏神经网络部分)等等。

2.5.计算机视觉算法工程师

e5dfce8ad9c60bd7639bd4d459090282.png
  • 岗位介绍:

  • 该方向主要基于摄像头传感器,主要包括:车道线检测、车辆等障碍物检测、可行驶区域检测、红绿灯等交通信息检测等等。

  • 技能要求:

  • C/C++,Python,OpenCV;

  • 需要机器学习的基本算法 ( 降维、分类、回归等 );

  • 需要学习深度学习,深度学习框架;

  • 学习计算机视觉和图像处理的常用方法 ( 物体检测、跟踪、分割、分类识别等 ) 。

2.6.自然语言处理算法工程师

  • 岗位介绍:

  • 该方向主要负责车载场景下的语音识别,语音交互设计等等

  • 技能要求:

  • 学习机器学习算法、深度学习算法(RNN);

  • 自然语言处理基本任务(分词、词性标注、句法分析、关键字抽取)

  • 需要使用机器学习方法聚类、分类、回归、排序等模型解决文本业务问题;

  • 熟悉 PyTorch、TensorFlow等深度学习框架(偏RNN部分)等等。

2.7.决策算法工程师

667ae01a7ff2e009a8be01f4aaecdb30.png
  • 岗位介绍:

  • 自动驾驶的决策是将感知模块传递的信息,转化成车辆的行为,达到驾驶的目标。例如,汽车加速、减速、左转、右转、换道、超车都是决策模块的输出。决策需要考虑到汽车的安全性和舒适性,保证乘客的安全的情况下,尽快到达目标地点。

  • 技能要求:

  • c/c++/python,熟悉ROS系统;

  • 学习常用的决策算法,如决策状态机、决策树、马尔可夫决策过程,POMDP等;

  • 如果往深里学的话,需要熟悉机器学习算法(RNN、LSTM、RL),掌握至少一种深度学习框架(比如gym或者universe等深度强化学习平台);

  • 熟悉车辆运动学和动力学模型。

2.8.规划算法工程师

d814f75a1d8eaeff3664f3d6d3d058fa.png b5956b47b97cb18d72d1a1e8b4db8481.png
  • 岗位介绍:

  • 规划包括路径规划和速度规划

  • 规划算法中,自动驾驶车辆首先通过路径规划确定车辆可行驶的路径,然后选择该路径确定可行驶的速度。

  • 技能要求:

  • c/c++/python,ROS机器人操作系统;(有些公司是用Matlab/simulink开发的)

  • 学习常见路径规划算法,例如A、D、RRT等;

  • 学习一些曲线的表示方法,如:五次曲线、回旋线、三次样条曲线、B样条曲线等;

  • 如果往深里学的话;学习轨迹预测算法,如MDP、POMDP、Came Theory等;

  • 学习深度学习和强化学习技术也是加分项,例如RNN、LSTM、Deep Q-Learning等;

  • 有数学理论基础和背景,熟悉车辆运动学和动力学模型。

2.9.控制算法工程师

70f75c50eda38d9305e97186341000c2.png
  • 岗位介绍:

  • 一般是对车辆横纵向动力学建模,然后开发控制算法,实现车辆运动控制等;

  • 这个岗位跟车辆打交道较多,对于传统车厂转型到自动驾驶领域的伙伴来说,是个很好的切入机会。

  • 技能要求:

  • C/C++、Matlab/Simulink

  • 学习自动控制理论基础,学习现代控制理论;

  • 学习PID、LQR、MPC算法;

  • 学习车辆运动学、动力学模型,对汽车的底盘有一定了解;

  • 学习CarSim等仿真软件;

  • 学习ACC、AEB、APA、LKA、LCC等辅助驾驶功能开发的是加分项;

  • 拥有实车调试经验也是加分项。

3.非算法类工程师

3.1.软件平台开发工程师

  • 岗位介绍:

  • 设计和实现自动驾驶软件平台,包括内核修改/扩展、驱动程序实现/增强、中间件实现/增强、系统集成、性能/功耗优化、压力/稳定性/符合性测试;

  • 负责搭建系统架构、编写底层驱动程序;

  • 负责视觉相关算法在嵌入式处理器(GPU、DSP、ARM等平台)上的代码实现及性能优化、测试和维护;

  • 协助算法工程师完成算法在嵌入平台上的移植、集成、测试和优化。

  • 技能要求:

  • C/C++编程技巧、Python;

  • 具有嵌入式操作系统和实时操作系统的内核或驱动开发经验,熟悉QNX、ROS;

  • 熟悉软件调试和debug工具;

  • 了解车辆ADAS ECU和传感器,如雷达、摄像头、超声波和激光雷达;

  • 熟悉通用诊断服务(UDS)、控制器局域网(CAN);

  • 熟悉通信协议(CAN、UDS、DoIP、SOME/IP、DDS、MQTT、REST等)是加分项。

3.2.系统工程师

  • 岗位介绍:

  • 负责客户需求对接,以及与内部开发人员的需求释放;

  • 负责无人驾驶软件系统框架构建 ;

  • 负责模块化、可验证的系统软件架构设计和实时性能优化;

  • 与硬件、算法和测试团队合作,集成并优化自动驾驶系统。

  • 技能要求:

  • 拥有扎实的计算机基础理论知识(如:自动控制、模式识别、机器学习、计算机视觉、点云处理);

  • 具有嵌入式操作系统和实时操作系统的内核或驱动开发经验;

  • 具备很好的沟通表达能力和团队合作意识

3.3.功能安全工程师

  • 岗位介绍

  • 在产品全生命周期内对产品的功能安全进行支持

  • 负责无人/自动驾驶系统产品的功能安全系统设计,并对现有流程提出改进意见;

  • 负责无人/自动驾驶系统的危险分析(HARA, FMEAs, FMEDA, FTA);

  • 负责无人/自动驾驶系统的安全目标定义;

  • 负责无人/自动驾驶系统的安全需求定义;

  • 技能要求:

  • 精通ISO26262并有自动驾驶或者ADAS系统功能安全项目实施经验;(在传统车厂做功能安全想要转行的也可以考虑);

  • 了解FMEA,FMEDA,FMEA-MSR,FTA等相应的方法;

3.4标定工程师

  • 岗位介绍:

  • 负责自动驾驶多传感器标定,包括GPS、IMU、LiDAR、Camera、Radar 和 USS 等;

  • 设计实现传感器内参外参标定算法,搭建多传感器标定系统;

  • 负责对标定参数进行相关车辆测试,给出测试报告。

  • 技能要求:

  • C++编程, 熟悉 Linux及ROS系统;

  • 有传感器标定工作经历,熟悉视觉或激光 SLAM 算法;

3.5仿真环境工程师

b1b71df092fcb1e9ce6b0754508cbea6.png
  • 岗位介绍:

  • 该方向需要参与自动驾驶相关仿真系统的搭建,包括车辆动力学相关仿真,各类虚拟传感器模型和虚拟场景的建模与仿真,根据测试案例搭建测试场景,执行自动驾驶算法仿真测试等等;

  • 负责搭建无人驾驶模拟系统,对汽车、传感器、环境进行软件模拟。模拟结果将与真实数据一同用于预测汽车在真实场景中的行为;

  • 配合驾驶决策、路径规划、仿真算法等模块,实现自动驾驶闭环仿真,并可视化相关调试信息。

  • 技能要求:

  • MATLAB/simulink、Python/C++

  • 熟练操作一种常用车辆动力学或无人车相关仿真软件,比如Perscan、Carsim、Carmaker等;

  • 熟悉机器人操作系统ROS等;

  • 有的仿真岗位纯属于做仿真,但有的岗位需要做仿真环境的开发,这样的岗位对编程要求会更高一些。

3.6测试工程师

  • 岗位介绍:

  • 该方向主要负责自动驾驶车辆的相关测试工作,测试自动驾驶系统功能各项指标的性能,评估其边界条件和失效模式;

  • 负责自动化测试(SIL、HIL)的设计实现及智能驾驶产品的相关验证;

  • 负责根据系统或产品的功能需求制定测试用例和测试计划;

  • 负责制定完整的系统或产品的测试计划并实施,最后撰写测试报告;

  • 收集和测试系统的边界样例,对智能驾驶系统的安全性进行评估,对技术提出合理的反馈。

  • 技能要求:

  • 熟悉Ubuntu/Linux操作系统,会写python脚本

  • 熟悉CAN总线;

  • 熟悉测试用例的编写方法和技巧;

  • 熟悉图像识别算法,熟悉深度学习,掌握spark等大数据相关工具者加分;

  • 熟悉激光雷达,毫米波雷达,超声波探头和摄像头的应用是加分项。

3.7大数据开发工程师

  • 岗位介绍:

  • 数据包括后台数据架构和前台呈现。一辆自动驾驶车每天都要生成1个T的数据量。数据该怎样快速清洗、提炼、总结,比如怎样迅速找出一次路测中最重要的几次介入(disengagements)。从而更高效的帮助工程师测试。

  • 负责自动驾驶大数据平台系统的设计、开发和优化;

  • 负责自动驾驶数据标注与处理流程的可视化工具开发,自动化标注平台的设计与研发。

  • 技能要求:

  • 具备扎实的数据结构及算法功底;

  • 精通Java/Python/C++等至少一门高级编程语言;

  • 熟悉Linux开发环境;

  • 有基于SQL或No-SQL数据库的应用程序的设计、开发经验;

  • 熟悉REST服务及Web标准,熟悉一种主流前端开发框架,如React/AngularJS,能独立构建前端应用者加分;

  • 熟悉自动驾驶及相关的Lidar、Camera等传感器数据者加分。

3.8UI开发工程师

6f95d67b3ab7c343f85e5dd836f710ef.png
  • 岗位介绍:

  • 每个公司都需要搭建内部工具,用于验证整车开发。也需要给远程控制中心做各种交互页面,通过一个UI远程控制自动驾驶车。同时也包括车厢内为乘客准备的UI。喜欢设计或者擅长前端的朋友可以考虑。

  • 技能要求:

  • 具有优秀的审美和丰富的视觉表现力;

  • 精通色彩、图形、信息和GUI设计原则及方法。

4.结尾

最后,国家政策正在大力推广新能源智能化汽车,希望越来越多的伙伴一起加入到自动驾驶行业;本人花了6个小时搜集岗位信息和资料并且汇总,希望对大家有帮助。

附送自动驾驶52节视频课大礼包,拿走不谢,希望将这份爱心传递下去。希望未来有你们在,自动驾驶行业会蓬勃发展。

链接:https://pan.baidu.com/s/1a4qMYahKh8GvDd5BFUkfqg

提取码:hrnq

投稿作者为『自动驾驶之心知识星球』特邀嘉宾,欢迎加入交流!

① 全网独家视频课程

BEV感知、毫米波雷达视觉融合多传感器标定多传感器融合多模态3D目标检测车道线检测轨迹预测在线高精地图世界模型点云3D目标检测目标跟踪Occupancy、cuda与TensorRT模型部署大模型与自动驾驶Nerf语义分割自动驾驶仿真、传感器部署、决策规划、轨迹预测等多个方向学习视频(扫码即可学习

6b53d2243196448d7ccde1e30057f5c8.png 视频官网:www.zdjszx.com

② 国内首个自动驾驶学习社区

近2400人的交流社区,涉及30+自动驾驶技术栈学习路线,想要了解更多自动驾驶感知(2D检测、分割、2D/3D车道线、BEV感知、3D目标检测、Occupancy、多传感器融合、多传感器标定、目标跟踪、光流估计)、自动驾驶定位建图(SLAM、高精地图、局部在线地图)、自动驾驶规划控制/轨迹预测等领域技术方案、AI模型部署落地实战、行业动态、岗位发布,欢迎扫描下方二维码,加入自动驾驶之心知识星球,这是一个真正有干货的地方,与领域大佬交流入门、学习、工作、跳槽上的各类难题,日常分享论文+代码+视频,期待交流!

d35a5eab93fcd30add32aa7b23017c3b.png

③【自动驾驶之心】技术交流群

自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D目标检测、BEV感知、多模态感知、Occupancy、多传感器融合、transformer、大模型、点云处理、端到端自动驾驶、SLAM、光流估计、深度估计、轨迹预测、高精地图、NeRF、规划控制、模型部署落地、自动驾驶仿真测试、产品经理、硬件配置、AI求职交流等方向。扫码添加汽车人助理微信邀请入群,备注:学校/公司+方向+昵称(快速入群方式)

534317c044014de2b940a5a41a94a76e.jpeg

④【自动驾驶之心】平台矩阵,欢迎联系我们!

f738b0715be046b8dc10b512f7fb97b0.jpeg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值