今年三月份到现在陆陆续续面了40来个人,有实习生,有校招生,也有来社招的大佬们。面了挺久,有些总结和感想,发出来和大家交流交流,也趁着这个机会为之后参与校招的同学提供一些学习方向。
我面的岗位主要是算法工程师,也会面试一些推理相关的人。
简单从这三点说:
-
对候选者的要求
-
大家的水平
-
未来的看法
技术交流
技术要学会分享、交流,不建议闭门造车。一个人走的很快、一堆人可以走的更远。
资料、数据、技术交流提升, 均可加知识星球交流群获取,群友已超过2000人,添加时切记的备注方式为:来源+兴趣方向,方便找到志同道合的朋友。
方式①、添加微信号:mlc2060,备注:加群
方式②、微信搜索公众号:机器学习社区,后台回复:加群
实习生
第一个是招实习生,实习生的简历,大家的学校感觉都不错,北邮、北航、东南大学、厦门大学、大连理工、西交西电等等,项目做的也都很多,有发表过一些顶会的也有其他不错期刊的。也有同时在其他公司实习的,这种有公司实习经历的同学我们肯定是优先考虑,毕竟在公司实习能有个完整的项目啥的,而且ssh、git、docker一些常用工具也都会用。
不过实习生的话,公司要求没有校招高,只要有对口的项目,代码能力过关,来了我们都愿意培养,一起搞个项目,学生嘛,学习起来很快,上手新项目多带带很容易就会了。重点说下代码能力必须要过关,你项目不多不要紧,你来了可以学,代码能力不行就会怀疑你项目是咋做的有没有自己亲自动手做的。
还有一个是要求实习生对基础理解的比较好些,项目虽然可以不用太多,但是你做过的项目细节,自己必须要清楚,深入问的时候能够回答上来,比如一个BN层,训练和推理有哪些表现不一样,有哪些参数需要更新等等,这些细节面试的时候大部分人都说不全,不能一次性说对。
总结下对实习生的要求:
-
项目可以不多,但是要精
-
基础知识要好
-
代码能力过关
就OK了,至于方向的话,只要是和算法CV相关就行。
校招生
校招生要求会高一些,校招生的学校和实习生没区别,也都挺好,不过看简历项目明显多了一些(最起码暑假阶段找了个实习,然后秋招面试的时候可以写上去),对于校招生来说,除了基础知识外,更要看项目是否匹配啥的。
因为现在深度学习算法咋说也火了好多年了,从神仙打架到诸神黄昏了。到现在简历上搞一些什么使用unet训练一个分割网络实现某个任务,或者说使用yolov7检测某个目标已经不是什么亮点了。不过这种也不是不行,但你需要更多的深度我才会感兴趣:
-
网络结构有无值得说明的改进
-
为什么这样做可以明确说出原因和数据证明
-
对使用这个方法以及和其他方法做过比较详细的对比,选择这个模型是有理由的
现在是大模型和多模态的时代,大模型确实在很多场景上都应用的挺好而且都能落地,比如chatgpt以及基于llama的各种开源模型在各种场景上的应用,隔几天就能出一个大模型、隔几天刷一次榜;多模态的话,gpt4已经可以看图生图了(gpt-plus用户可以体验),而且效果也比较惊艳,这种多模态潜力还是很大的,有很多开源的项目可以借鉴:
-
https://github.com/QwenLM/Qwen
-
https://github.com/IDEA-Research/GroundingDINO
-
https://github.com/Vision-CAIR/MiniGPT-4
因此也希望校招生有多模态相关的项目(实话实说,多模态和大模型对显卡的要求比普通项目更高,确实在学生时代搞还是挺难…),多模态,和CV结合再和NLP结合,都能搞出不错的项目。
比较简单点的多模态可以尝试下grounding dino,对于稍稍的大模型+目标检测来说是一个不错的点子:
话说回来,在面试今年算法校招生的时候,就更想要一些偏多模态,
至于部署工程方面,我也看到很多校招生有一些工程的项目,比如使用C++写个模型的前后处理,比如剪枝量化啥的,不过感觉都不是很深,比如关于剪枝的细节,问具体剪的是哪?剪网络层?剪通道?还是剪kernel,回答的都不是很清楚,还有量化,因为现在很多库对量化支持的很好,大家普遍调用一下API看到结果好就好了,也没有看细节,这个一问就问出来了(比如trt的量化,有api可以直接量化)。这些部署可以搞得再细一点,不过这些童鞋在大家都一样的基础上,你再会C++、再会一些部署方向的东西,比只会写python算法的肯定要强些。
推理相关
推理面了一些校招以及一些社招,大家的方向大概是这几种:
-
搞上层编译器的(类似于torch-tensorrt的利用pytorch生态和TensorRT生态的在nvidia显卡加速的编译器,不需要自己写codegen),会针对不同的后端(比如onnx和torchscript)写parser,针对计算图写一些pass;也有搞基于MLIR的编译器的,在自己的公司硬件上跑,前端中端后端需要都搞
-
搞推理框架的,就是优化训练和部署中的一些性能问题、精度溢出问题;有些公司喜欢搞统一的框架(训练和部署都解决了),不喜欢用现有的轮子,要自己造;对于加速类的推理框架,会实现比如模拟量化功能、精度对比功能等等
-
搞加速的,就是对任务中各种瓶颈的算子进行加速,C++转cuda,python转c++等等,使用C++封装一些项目blabla
有些社招的大佬做的比较深,细节说的比较好,也对新的技术(比如新显卡hopper架构)有探索的热情(面试过一些35+的大佬,热血激情不分年龄),在多个大厂待过,很强。
也有一些优秀的校招生,项目优化op的细节都能答上来,加分~也有几个校招生不清楚项目为啥要这么做,问则答曰领导要求的,问有没有自己的想法,回答的也不是很好,这种是比较降分的。
感想
预计明年的热点还是大模型和多模态,而部署加速一直有需求。问了面试的算法校招生,说今年难度也挺大,有好学校的秋招过了国庆目前只有一个offer。
还有因为大模型,一开始各个厂抢大模型加速的人才比较剧烈,不过现在应该好多了。
其余一些想说的:
-
面了不少寒武纪和百度的大佬
-
有工作7、8年的大佬,在多个大厂待过然后目前在创业公司
-
也有离职(自己原因、公司原因)待业的大佬
环境依然不是很乐观,之后一起加油!