【猎头经验分享】浅谈算法工程师的职位分类
垂直于智能科技行业的人材速配平台
今天我们来讲讲算法工程师,算法工程师是一个非常高端也是相对紧缺的职位,通常薪资是在是月薪15k以上(年薪18万以上),但是由于算法工程师分类较多,而且易与软件工程师混淆,我们常常搞不清算法工程师的概念和具体的职位分类。所以今天我们就帮大家理一理,什么是算法工程师。
1、基本要求
1、专业要求
计算机、电子、通讯、数学等相干专业。
2、学历要求
最低本科及其以上的学历,但目前多数职位要求是硕士学历及其以上。
3、语言要求
英语要求是熟练,基本上能浏览国外专业书刊,做这一行常常需要读论文。
4、基本要求
必须掌握计算机相干知识,熟练使用仿真工具MATLAB等,必须会一门编程语言。
5、必杀技能(4选1)
(1)机器学习;
(2)大数据处理:熟习最少一个分布式计算框架Hadoop/Spark/Storm/map-reduce/MPI;
(3)数据发掘;
(4)最少熟习C/C++或Java,熟习最少1门编程语言例如java/python/R。
6、加分项
具有较为丰富的项目实践经验(不是水论文的哪种)。
2、算法工程师的职位细分名称
具体到算法工程师的职位就很多了,包括:
音/视频算法工程师(通常统称为语音/视频/图形开发工程师)、图象处理算法工程师、计算机视觉算法工程师、通讯基带算法工程师、信号算法工程师、射频/通讯算法工程师、自然语言算法工程师、数据发掘算法工程师、搜索算法工程师、控制算法工程师等。
3、算法工程师的职位分类与技术要求
为了方便记忆,我们将算法工程师做一个粗略的分类,并说明不同算法工程师所需要的不同技能。为了方便大家理解,在每个职位后我们都附上了这个职位的相干术语。
1、图象算法/计算机视觉工程师
图象算法/计算机视觉工程师包括:图象算法工程师,图象处理工程师,音/视频处理算法工程师,计算机视觉工程师。
(1)专业来源
计算机、数学、统计学相干专业。
(2)技术领域
机器学习,模式识别。
(3)技术要求
①精通DirectXHLSL和OpenGLGLSL等shader语言,熟习常见图象处理算法GPU实现及优化;
②语言:精通C/C++;
③工具:Matlab数学软件,CUDA运算平台,VTK图象图形开源软件;
④熟习OpenCV/OpenGL/Caffe等经常使用开源库;
⑤有人脸辨认,行人检测,视频分析,三维建模,动态跟踪,车辨认,目标检测跟踪辨认经历的人优先斟酌;
⑥熟习基于GPU的算法设计与优化和并行优化经验者优先;
⑦熟习H。等视频编解码标准和FFMPEG,熟习rtmp等流媒体传输协议,熟习视频和音频解码算法,研究各种多媒体文件格式,GPU加速;
⑧加分项:在github相干开源库有贡献,有自己的技术博客。
(4)应用领域
①互联:如美颜app;
②医学领域:如临床医学图象;
③汽车领域;
④人工智能。
(5)相干术语
①OCR:OCR(OpticalCharacterRecognition,光学字符辨认)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式肯定其形状,然后用字符辨认方法将形状翻译成计算机文字的进程;
②Matlab:商业数学软件;
③CUDA:(ComputeUnifiedDeviceArchitecture),是显卡厂商NVIDIA推出的运算平台(由ISA和GPU构成)。CUDA?是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题;
④OpenCL:OpenCL是一个为异构平台编写程序的框架,此异构平台可由CPU,GPU或其他类型的处理器组成;
⑤OpenCV:开源计算机视觉库;OpenGL:开源图形库;Caffe:是一个清晰,可读性高,快速的深度学习框架;
⑥CNN:(深度学习)卷积神经络(ConvolutionalNeuralNetwork)CNN主要用来辨认位移、缩放及其他情势扭曲不变性的二维图形;
⑦开源库:指的是计算机行业中对所有人开发的代码库,所有人均可以使用并改进代码算法。
2、机器学习工程师
(1)专业来源
计算机、数学、统计学相干专业。
(2)技术领域
人工智能,机器学习。
(3)技术要求
①熟习Hadoop/Hive和Map-Reduce计算模式,熟习Spark、Shark等尤佳;
②大数据发掘;
③高性能、高并发的机器学习、数据发掘方法及架构的研发。
(4)应用领域
①人工智能,比如各类仿真、拟人运用,如机器人;
②医疗用于各类拟合预测;
③金融高频交易;
④互联数据发掘、关联推荐;
⑤无人汽车,无人机。
(5)相干术语
①Map-Reduce:MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映照)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性;
②Hadoop:Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
3、自然语言处理工程师
(1)专业来源
计算机相干专业。
(2)技术领域
文本数据库。
(3)技术要求
①熟习中文分词标注、文本分类、语言模型、实体辨认、知识图谱抽取和推理、问答系统设计、深度问答等NLP相干算法;
②运用NLP、机器学习等技术解决海量UGC的文本相关性;
③分词、词性分析、实体辨认、新词发现、语义关联等NLP基础性研究与开发;
④人工智能,分布式处理Hadoop;
⑤数据结构和算法;
⑥加分项:有实际项目经验者优先;
(4)应用领域
口语输入、书面语输入、语言分析和理解、语言生成、口语输出技术、话语分析与对话、文献自动处理、多语问题的计算机处理、多模态的计算机处理、信息传输与信息存储、自然语言处理中的数学方法、语言资源、自然语言处理系统的评测。
(5)相干术语
NLP:人工智能的自然语言处理,NLP(NaturalLanguageProcessing)是人工智能(AI)的1个子领域。
4、射频/通讯/信号算法工程师
包括:3G/4G无线通信算法工程师,通讯基带算法工程师,DSP开发工程师(数字信号处理),射频通讯工程师,信号算法工程师。
(1)专业来源
计算机、通讯相干专业。
(2)技术领域
2G、3G、4G,BlueTooth(蓝牙),WLAN,无线移动通讯,络通讯基带信号处理。
(3)技术要求
①了解2G,3G,4G,BlueTooth,WLAN等无线通信相干知识,熟习现有的通讯系统和标准协议,熟习经常使用的无线测试装备;
②信号处理技术,通讯算法;
③熟习同步、均衡、信道译码等算法的基本原理;
④熟习射频前端芯片,扎实的射频微波理论和测试经验,熟练使用射频电路仿真工具(如ADS或MW或Ansoft);熟练使用cadence、altiumdesignerPCB电路设计软件;
⑤有扎实的数学基础,如复变函数、随机进程、数值计算、矩阵论、离散数学。
(4)应用领域
①通讯;
②VR;
③物联,车联;
④导航,军事,卫星,雷达。
(5)相干术语
①基带信号:指的是没有经过调制(进行频谱搬移和变换)的原始电信号;
②基带通讯(又称基带传输):指传输基带信号。进行基带传输的系统称为基带传输系统传输介质的全部信道被一个基带信号占用。基带传输不需要调制解调器,装备化费小,具有速率高和误码率低等优点,。合适短距离的数据传输,传输距离在米内,在音频市话、计算机络通讯中被广泛采取。如从计算机到监视器、打印机等外设的信号就是基带传输的。大多数的局域使用基带传输,如以太、令牌环;
③射频:射频(RF)是RadioFrequency的缩写,表示可以辐射到空间的电磁频率(电磁波),频率范围从KHz~GHz之间(由于其较高的频率使其具有远距离传输能力)。射频简称RF射频就是射频电流,它是一种高频交换变化电磁波的简称。每秒变化小于0次的交流电称为低频电流,大于00次的称为高频电流,而射频就是这样一种高频电流。高频(大于10K);射频(K-G)是高频的较高频段;微波频段(M-G)又是射频的较高频段。;
④DSP:数字信号处理,也指数字信号处理芯片。
5、推荐/搜索/数据发掘算法工程师
包括:推荐算法工程师,数据发掘算法工程师,搜索算法工程师。
(1)专业来源
计算机、通讯、运用数学、金融数学、模式识别、人工智能。
(2)技术领域
机器学习,数据发掘。
(3)技术要求
①熟习经常使用机器学习和数据发掘算法,包括但不限于决策树、Kmeans、SVM、线性回归、逻辑回归和神经络等算法;
②熟练使用SQL、Matlab、Python等工具优先,要有优秀的数据库设计和优化能力,精通MySQL数据库运用;
③对Hadoop、Spark、Storm等大规模数据存储与运算平台有实践经验;
④数学基础要好,如高数,统计学,数据结构;
⑤精通倒排索引、全文检索、分词、排序等相干技术;
⑥加分项:数据发掘建模大赛。
(4)应用领域
①个性化推荐;
②广告投放;
③大数据分析。
(5)相干术语
Map-Reduce:MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映照)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。
6、控制算法工程师
包括云台控制算法,飞控控制算法,机器人控制算法。
(1)专业来源
计算机,电子信息工程,航天航空。
(2)技术领域
控制算法(如PID控制算法)。
(3)技术要求
①精通自动控制原理(如PID)、现代控制理论,精通组合导航原理,姿态融会算法,机电驱动,机电驱动;
②卡尔曼滤波,熟习状态空间分析法对控制系统进行数学模型建模、分析调试;
③加分项:有电子设计大赛,机器人比赛,robocon等比赛经验,有硬件设计的基础。
(4)应用领域
①医疗/工业机械设备;
②工业机器人;
③机器人;
④无人机飞控、云台控制等。
(5)相干术语
PID:PID是一种经典控制算法。具有原理简单,易于实现,适用面广,控制参数相互独立,参数的选定比较简单等优点;而且在理论上可以证明,对进程控制的典型对象──“一阶滞后+纯滞后”与“2阶滞后+纯滞后”的控制对象,PID控制器是一种最优控制。
4、算法工程师和软件工程师的区分
在工作中,软件工程师和算法工程师常被人们混淆,但是这二者其实差异很大,那末软件工程师和算法工程师的具体差别是什么呢?
1、工作产品上
(1)软件工程师:软件工程师输出代码和文档,其中代码是主要产品。
(2)算法工程师:算法工程师输出算法模型和描写,虽然通常也是代码和文档,但是目的是为了表达算法。
2、手段和工具上
(1)软件工程师:软件工程师用的是各种编程语言和软件架构。
(2)算法工程师:算法工程师也使用编程语言,但更多依赖各种专业上的工具软件,例如MATLAB、各种统计分析软件等等。
3、
北京中科白癜风医院价格中科UM-D