最近准备招一两个实习生。刚好来聊聊互联网算法实习。主要是来聊聊什么算是一份好的实习。(联系方式在文末)
虽然今年整体的互联网大环境比较差。但是目前来说,互联网行业依然是相对来说发展速度快,门槛相对低,待遇回报相对比较高的行业。虽然可能没有前几年那样猪都能飞上天,但在下一个新的大浪到来之前,肯定还是一个不错的选择。
具体细分在行业里,算法这块,目前肯定还是缺人的。原因主要是,行业大环境差了,对精细化的要求高了,原来可以粗放的直接硬上的一些策略,现在不得不追求一些投入产出比。那么这个投入产出比怎么算,怎么在做策略之前精细化的划分,都是需要数据和算法相关越来越深入到产品运营活动中间的每一环。所以,以往一些比较偏业务的策略运营或者产品运营,现在也愿意腾出一些HC来设置一些数据相关的岗位,也是在这种大的环境下的产物。对实际落地事情非常感兴趣的同学,这也是一个可以选择的方向和机会。
说回到算法行业。因为整体行业没有那么好,也给想入行的同学们提了新的要求。以前那种只要会写代码,懂一点基础的机器学习就可以直接带走的情况不再出现了。因为HC相对缩减了,以及这两年新入行的算法工程师越来越多(不少学校增设了相关专业,其实也是同学们选择的结果),需求少了,供给增加,所以竞争会比之前激烈很多。
所以峰池在这里想给想入行的同学们再提醒几点,也是我自己在面试的过程中发现的问题:
代码基础一定要扎实。我也提了很多次,算法工程师首先是工程师,来了是希望你能写代码的。来了不是让你调模型结构的,也没有那么多机器资源,来了你会发现大部分的时间其实是在构造你想训练模型的数据集。所以基础的代码题要熟练,数据结构要扎实。你有五篇顶会论文代码题写不出来那谁也救不了你。
机器学习、深度学习的基础要好。很多同学在学校做的NLP和CV项目,随着这两个方向现在研究的越来越细分,很多东西也不太能直接落地,除非你找的是一个和你研究特别对口的一个岗位,否则比如跨方向来面试推荐,说老实话有时候自己面试的时候很多同学在做的事情我也确实不太清楚研究的背景。又因为NLP和CV直接应用的场景比较少,而互联网行业目前最大的需求搜广推其实问题往往也不那么fancy,往往需求面最大的都是一些很基础的问题。所以面试的时候往往也会考察一些基础的问题,所以大家在基础这块一定不能忽视了,比如深度学习的基础等等。很多同学的反应都是学过,但是忘了。这是不行的,这就是不了解需求了。
沟通表达等等软素质需要注意。前面也提到了,现在有挺多的工作,是在拓展算法的应用场景,而不再是一个well-defined问题(比如点击率的预估)再进一步的优化,那到底新场景上怎么定义算法目标,正负例怎么选择,特征怎么构建,都是需要沟通理解业务之后才产生的。所以沟通表达等等软素质是越来越重要的。当然表达清晰的背后是你对想解决的问题有一个更深更有条理的理解,所以大家平时也可以注意思考锻炼一下。当然如果你技术特别扎实,那也可以完全不关心。否则还是需要注意一下的,这块好了是可以加分的。
可能谣传有说法是,一定要有顶会论文才能入职大厂算法。我觉得这个基本上是没啥可信度的。顶会论文,只是为了证明自己在学校期间,是一个「优秀学生」的证明,比没有好,但在我看来没有扎实的大厂实习靠谱。相反,顶会水文章的,基础不扎实,面试一聊就能聊出来,也没啥用。
那接下来的问题是,什么样的实习算是一个好的实习呢?其实定义好的实习的标准就是,自己能不能学到东西。如果你觉得这个岗位,能让自己学到挺多东西,那么就是一个好的实习。
不过,好确实很难定义,不如我来定义一下什么是不好。也有一些大家在实习的过程中的常见误区:
互联网算法相关的实习,没有份数限制,相反时间尽量长一点是好的。可能这个说法是原来找其他行业(可能主要是金融)的同学遗传下来的,讲求3个月换一份实习,把自己的实习经历刷满。这对于想体验不同行业的工作都在做什么的同学来说是好的。但是如果你已经打定主意要来互联网,要做技术相关的,那其实就没有这个限制。而且技术实习往往前一两个月都还在懵逼的学东西的状态,基本不会有什么产出,如果刚熟悉就走,那其实不会积累下来什么可以在后来面试中发挥价值的东西。尽可能在一份实习上,积累足够的经验,这样后来在面试别家公司的时候,其实也能帮助你拿到更好的offer。
实习期间尽量不要满足于自己只做被mentor分到的活,多做一点,把自己当成正式员工看,让自己了解的更多一点。比如如果你在一个项目里,虽然是一个新人,也要争取主动承担一点东西。身上有一点项目压力,做事情的动力相对也更强一点。
实习期间尽量不要做的事情太杂。可能确实有一些杂活要做,但做事尽可能还是有一个完整的主线。这样不管是接下来其他公司面试还是实习转正都是有东西可以讲的。做事情多,精力分散,就容易每一件事情都很浅,那你讲这件事的时候就很难有足够的价值(本质上还是新东西少)。后续的转正答辩也好去其他公司面试也好,经不起问,就显得是你在这件事上的思考不充分。今年有几位我们组实习转正的同学都是败在这件事上。当然,这个也和派活的mentor有关,没有经验的mentor有时候确实会遇到这个问题。如果这个问题发生在自己身上,也要注意及时沟通,看能不能挽救一些。其实这个事情在正式同学晋升的时候也是一样的,精力不要太分散,要聚焦在一两件事情上,把它做深,晋升的时候才有的讲。
如果你觉得这个实习学不到啥,可以早点跑。可能是因为组的原因,也可能是因为mentor确实有问题,也不用担心自己的简历花了啥的(大不了不写)。虽然这么说是违背HR心愿的,但是早点跑真的是对自己负责的表现。我自己当年实习有7天就跑了的,没啥大不了的。
就目前互联网行业来说,行业用到的和学校里面学到的,或者说学校里面常见的科研问题(多是NLP和CV的),还是有一些差距。如果想尽早积累行业经验,还是早点出来实习。看看实际的生产环境到底长啥样,对同学们的需求到底是啥样,比较靠谱。比如鼓起勇气理好简历尝试面试聊聊看看,也比一直在学校闭门造车要好一些。不过要提醒大家一点的是,大厂的面试记录是会一直保留的……所以可以有策略的做一下这个事情,大家自己意会吧hhh
最后,也给自己打个小广告吧。岗位是今日头条推荐算法,实习招人!社招也有坑!岗位链接我放在阅读原文了。我自己带,自我评价应该还不算坑吧,对新人也比较友好。也欢迎大家多多推荐。微信是fengchi_dong 感谢大家