01背景
2019年硕士研究生毕业(生物专业),研究生涉及一些机器学习的课题,毕业后是一名算法工程师(一年经验不到)。
今年3月份参加七月的CV就业班,5月裸辞,历时3个多月,收获了自己比较满意的offer。
02在七月在线学习
虽然毕业后成为一名算法工程师,但是没有受过系统的训练,所以想要多学习;另外也是因为自己对于CV一直蛮感兴趣,所以也更有学习的动力。
整个课程横跨3个月多,我从一开始只会搭比较简单的CNN框架,到理解卷积、到目标检测、分割的一些motivation,对于CV这一块的一些网络设计也有了更多的思考。
后面的项目课,学习到了近几年比较热门的ReID项目,也学习到了很多关于网络、训练、代码的小tricks,收获颇丰。
在结课后,还有专门的简历辅导,在此也非常感谢Seven老师帮助我修改简历,提取重点。
03找工作
从5月份裸辞之后,我在家学习休息了一个多月,开始正式踏入找工作的旅程。
一开始的时候在boss上投递了许多,但是反馈邀约很少,而这样的情形也让我有点慌张:原本我在找工作这块还是蛮自信的(包括自己的学校背景和学习成绩),但是今年的确招聘需求并没有那么多,而且对于只有一年经验的我来说,合适的岗位就更少了。
但是可能也是因为名校背景的加持,也有陆续收到一些大厂的面试邀约(尽管不是CV岗位),比如拼多多、字节、腾讯、依图,也有一些中小型公司的面试。
最后的话考虑到了家庭和工作的平衡,选择了一家时间相对稳定的外企。
04大厂面试都面什么
在一开始还没投递简历前,我对于本身的算法和数据结构基础不太自信,另外报了一个训练班进行系统学习,效果还不错,起码在这些大厂的面试过程中,代码部分都过关了。
拼多多:
这是一个推荐算法的岗位的面试邀约,在代码这块考了回溯和DFS。机器学习和深度学习这块,问了分类的一些评价指标和公式,然后问了一下做过的项目(但是因为面试官不搞CV,所以有点鸡同鸭讲),还问了有没有用过XGBoost、K-Means这些。
具体实践方面,问了有没有用过分布式系统。还有面试官提出了一个场景,问我有没有什么思路。总体来说这次面试自我感觉还是蛮好的,但是可能不是很合适(我对于推荐系统这块不是很懂),另外工程能力也比较重要,后面就没有下文了。
腾讯:CV岗
代码考察了DP(小偷问题)和回溯(DFS),顺利过关。深度学习算法,问了BN、drop out、label smoothing这些,回答得不是很好。
划重点,对于自己简历里写的这些策略,一定一定要网上多看看一些相关博客的深入介绍,不能浮于表面,不然面试官换个角度问就会被问倒。总体来说,因为面试官的态度,和我自己的紧张慌乱,导致这场面试不那么的美好。
平安:CV岗
没有代码考试,一面就ReID里面的一些tricks问了一下,还问了具体的代码实现。二面,面试官着重问了一些工程实现,比如之前你的项目里inference多久,还有关于模型加速的一些问题。另外问了ReID真实场景下的应用难点(被问倒了)。
一大批中小型企业:
风格各不相同,有的会考代码,有的是简单地聊了下项目,基本上满意度比较高。但是在这些公司中也存在蛮多坑,比如有两家我是非常想去的,有了一个初步结果后,我拒了其他公司的offer。
但是过几天后,他们告诉我没有headcount所以不招人了。我总结出来的一个教训,脸皮要厚,offer要多拿,不能为了一家而推掉其他的offer。
05找工作总结
1. 确定好你的目标公司:大厂还是中小型企业?如果已经有比较多的经验,优先建议大厂,也可以去中小公司积累一些经验,这样日后更好去大厂。
2. 代码:多刷leetcode,但是一定要系统性地刷,最重要的是不能AC了事,要多总结多背。
3. 深度学习和机器学习基础:可以参考《百面机器学习》、《西瓜书》,还有李航的统计书。
4. 项目:临面试前多准备下相关的知识点,代码也多翻看。
5. 面试不要紧张,一紧张脑袋就很容易短路。我失败的几场面试都是毁于被问倒后紧张的心态。