1.5年小白复盘互联网秋招

个人情况简介

    楼主本科就读于一所财经类一本院校,研究生就读于某中游985(非华五级别),本硕都是统计学专业,本科期间的话基本没写过代码,即便有也是熟练使用ctrl+c, ctrl+v。刚上研一时对互联网一无所知,当时只知道金融行业,还在努力奋战CPA考试,结果最后报名费交了,没去考....      
    硕士期间也是没有论文,独自参加了一个天池比赛(未能取得好名次),外加一份滴滴实习,基本上算是勉强达到互联网大厂中诸神黄昏、神仙打架、灰飞烟灭的算法岗的一个投递门槛。      
    建议大家在投递算法岗时可以尽量投递搜索/推荐/广告算法类的岗位,因为这些岗位招聘需求大,在企业里也相对处于一个核心位置(毕竟是赚钱部门),不像CV/NLP(计算机视觉和自然语言处理)这类岗位招聘需求少,还有论文要求,门槛相对也高些(我这个菜鸡最后才醒悟.....)
      本文也基本是我独自一人踩坑,摸爬滚打积累的经验所成,因为学长学姐基本都走金融或者银行科技岗方向,希望能帮助懵懂无知的小白少踩点坑,我差不多花了1.5年时间从零到一收获算法岗offer,所以大家要对自己有自信。

投递过程

    早投!早投!早投!重要的事情重复三遍,能在提前批投,就不要在正式批投,能在秋招投,就不要在春招投,见证和经历过太多面到后面,面试都通过了,但因为hc的问题被刷掉的惨痛教训,同时提前批投递可以免笔试(百度、字节、京东等公司),但咱也不能白给,上去直接送(因为面评也会直接保留),尽量准备到50%左右就可以去面试了。

     小Tips:

     1.尽量采取海投战略,不要只盯大厂,可以投一些小公司去练练手,找找面试感觉,再去面试自己心仪的公司时会得心应手。

     2.有些公司会让你先选择事业群/业务线,这也是个需要考虑的点,敲重点!往往核心部门的面试难度和录取难度都比较大,类似字节抖音/广告,阿里淘系/妈妈,腾讯wxg之类的,相比较于非核心/边缘部门(XX教育,XX文娱,具体可询问公众号,狗头保命),但同时如果录取对于个人的成长也会比较大,所以说是风险与收益并存。

     另外大家也可以做一张秋招日程表,注明投递日期,岗位,公司等信息,防止之后忘记自己投递了哪些公司,具体可参见下图
    
         
    可以看到我从6月初开始就投递了提前批,一直持续到8月底,我差不多投递了40家公司,基本都有面试机会,因此早投递,被发起面试的概率还是很大的,这也是你后续能拿到offer的一个必要前提

秋招结果

    最终也是收获了百度推荐、京东广告、滴滴风控、B站广告算法等offer,其实结合自身实际情况分析,收获这些offer算是勉强及格吧,但复盘自己挂掉的原因,仍旧有很多可待提高的点。

    接下来我不会阐述面试细节,因为这些牛客网上很多,而且会根据每个人的简历不同而进行变化,我主要总结一下该准备哪些内容以及时间线上的安排,大致分为算法 + 项目/实习/比赛 + 八股文/基础知识

1、算法

    首先讲下算法在面试中的重要性吧,首先笔试和面试中都会考查算法,笔试会按照成绩筛选(但有些提前批不需要笔试,因此尽早投递),绝大部分公司的面试也需要手撕1-2道算法题(亲身经历,面试10场,9场需要手撕算法),做不出来很大概率上这次面试就跪了,特别是字节这类重视coding的公司,因此大家务必重视算法,同时也得清楚算法的时间复杂度,我有些大厂面试挂掉就是因为算法题没做出来

     我个人经历的话差不多是从研一下(4、5月份)才第一次接触算法以及数据结构这个概念(越早越好),也是买了《大话数据结构》这本书作为入门教材,虽然这本书中算法都是用C语言来实现,但并不影响我理解算法的思想以及常见的数据结构,基本上涵盖了常考的知识点,同时易读性很强,不像《算法导论》这部圣经,厚厚的就想让人绝望。先完整的看一遍,平常概念不清晰时也常翻翻。

    熟悉常见的数据结构和算法后,就可以去leetcode上面刷算法题,刷题过程一直持续到秋招前,保证每天刷3-4题吧(同时限定10min内思考,如果思考不出直接看答案,因为面试时的思考时间差不多就是5-10min),可以先限定一个大范围,比如Hot 100、剑指offer、CodeTop小程序上的企业常考题(避免在低频题上做无用功),按照算法/数据结构类别来刷题,类似二叉树、链表、双指针、排序、二分查找,动态规划,大致刷300道题目,然后重复刷这些高频题2-3次,并把自己不会的题目进行总结反思,最后基本做到看到题目就有思路的程度,因为很多面试时的算法题就是leetcode原题。同时尽量做到举一反三,总结出各个题型对应的算法,比如看到一些子数组和子字符串的最值问题,基本就要想到用动态规划,看到有序数组很容易联想到用二分查找,我们不能单纯的背题目,需要掌握各个算法的思想和适用场景

面试算法时的小技巧:

    在面试官给出题目,自己脑海中有思路之后,先不要动手coding,而是把自己的思路和面试官先讲一遍,此举目的有如下:

  1.保证面试官接收到自己正确的思路,这样万一后面coding过程中没有跑通全部case或者实现过程中遇到困难,至少能弥补一点;

  2.万一思路有问题,面试官也能给出优化建议,方便最后coding成功。

  3.你写得太快,面试官会觉得你做过这道题目,那接下来他往往会出一些难题了。

  另外,如果思考了10min完全没有思路的话,是可以申请让面试官换一题或者申请提示。总而言之就是,切忌有思路之后盲目写题,而是先和面试官多交流


2、项目/实习/比赛    

    其实项目/实习/比赛这块,我觉得可以统一起来讲,从个人经历->如何写简历项目->如何准备->面试时如何讲述    1.首先简单说下个人情况吧,我差不多是研一下4、5月份将自己的课程作业进行完善,当做自己的第一个项目之后投递实习,2020.08-2020.11BIGO数据分析实习,在实习时去天池独自参加了一个比赛,之后2021.03-2021.07 在滴滴作为NLP算法实习,在滴滴实习这段过程中又在github上面找了一个项目操练,相当于在秋招之前已经有了两份实习,两份项目,一段比赛的经历,还是相对合格的(然并卵,其实公司更看重质量而不是数量,项目+实习+比赛有3份就可以了,但是要和投递岗位相关,不然面试官大概率没有兴趣)。
小建议:时间线不需要照搬我,经历相似便可,因为我3月份就去滴滴实习了,其实是没有参加当年春招的,但建议大家参加,有如下好处:   
1.如果通过春招面试,没有去实习,其实秋招可以直通终面(阿里,字节,美团都有),相当于别人需要2-3面拿offer,你只需要一面,速度快又省力 。   
2.提前参加春招,有利于积累经验,更有利于秋招的准备。
    首先在简历上写的时候,要按照针对什么问题,你做了什么改进,有了什么效果提升(最好是具体的数字量化指标)这样的格式来写,借鉴STAR原则简明扼要的阐述经历,可以加粗突出重点,而不是将细节全部写出同时写在简历上的点,都是面试官重点考察的对象,所以对于在简历上的任何东西务必熟悉透彻。

     项目/实习/比赛,基本会占到整个面试过程的50%的时间,所以务必准备时要好好复盘下整个项目的完整性,可以从以下几个方面反问自己

 (1)我为什么要做这个项目(交代下项目的背景,我们做的意义)

 (2)我为什么要对这个问题进行改进优化

 (3)针对问题优化,有和其他技术方法进行调研比较吗?为什么用你这个技术方法而不是其他技术方法?切忌只会照搬最新技术方法,而不会细致的分析自己问题所处的场景而选择最合适的方法

 (4)你这个技术优化的原理是什么?

 (5)具体是怎么实现这个技术优化的(这部分最好参照自己的代码细节)

 (6)知晓整个项目的流程链路pipeline(比如从选择数据开始,到最终模型上线)

 (7)对于整个项目中涉及的每个技术细节/原理,务必心知肚明,确保面试官提问时你都能回答出来

 (8)学会复盘,通过这次项目自己获得了哪些成长,仍旧有哪些不足可以有待改进

小建议:

  1.可以将自己的整个项目,各个方面的内容都写到word或者笔记本上,可以常翻常看,巩固知新

  2.经过每一次面试,总结自己回答的不好的点,将自己对于项目中没有考虑到的地方补充完整


3、八股文/基础知识

      其实根据我的个人经验来说,如果你的项目/实习/比赛相对比较充实,也和面试岗位比较契合的话,其实单纯问基础知识的时间并不多,而且往往会在问项目的同时穿插着问,或者就问一些和项目中用到的技术比较相关的内容,相对来讲比较好准备;但如果你的简历中能够引起面试官兴趣的点/能够让面试官提问的点比较少,此时就会问很多八股文了,往往此时问到的问题就可能会超出你的知识范围;同时语言方面,C++是加分项但不是必备项,只会python也是没有关系的,并不会卡语言。

      关于个人经历的话,其实一开始主要读的就是李航的《统计学习方法》,把机器学习的基本概念首先摸清楚,之后入门深度学习主要看李沐的《动手学深度学习》(最近他在B站也上传了,喜欢看视频学习的小伙伴可以去看看),这两本我感觉都是比较入门的经典书籍,通俗易懂,秋招前我又看了一遍,巩固基础,但我个人动手实践coding方面主要参考莫烦学python(mofanpy.com);之后的话就是缝缝补补,看到一个概念(比如梯度下降,Normalization等等)就去CSDN或者知乎上搜索相关知识(但找到详细优质的内容挺耗费时间的,建议大家灵活选择有效搜索方式),前沿经典模型的话就读原文论文(可以在arxiv上下载原文),并结合他人分析总结。

    学习完通用类基础知识,特定领域内(比如搜索/广告/推荐,CV,NLP)方面的,我本人对于NLP方面的知识基本是靠着《动手学深度学习》,以及看相关论文综述,先了解整体的发展脉络,再针对细节进行仔细阅读,同时也会结合下优质公众号(比如美团技术、CS的陋室等),了解下工业界各公司是如何应用前沿方法落地的; 如果是要投身推荐/广告算法方向的小伙伴的话,可以阅读下项亮的《推荐系统实践》(入门),王喆的《深度学习推荐系统》(进阶),来掌握基础概念。

    面试时尽量引导面试官去问你熟悉的知识,同时在回答完相关问题之后,也可以根据这个问题引申出自己熟知的相关知识,让面试官看到你知识的广度;另外切记在问到不会的问题时,请勿瞎蒙以及不懂装懂,就说自己不懂,否则有可能面试官会深挖,以及会让面试官觉得你在不懂装懂,不严谨。如果事后复盘发现自己很多问题回答不出也不要气馁,可能面试官就是压力测试,想看看你到底了解到什么程度,同时也可以在面试结束后问问面试官的评价,从他的回答中也可以看出他对你本次面试的整体评价。

结语

       希望看完对自己有收获的小伙伴可以关注公众号:Coder浩,或者留言区积极评论交流那,其实楼主本人也有春招的打算,大家一起加油
       





#秋招#
全部评论
华东师范只能算末流985😅
点赞 回复 分享
发布于 2021-11-25 01:32
楼主,求加一下微信,取取经,拜托了
点赞 回复 分享
发布于 2021-11-25 09:58
向你学习。准备明年春招实习
点赞 回复 分享
发布于 2021-11-25 12:02
同学校的直系学长😁,我也打算以后去算法,希望可以学习学习
点赞 回复 分享
发布于 2021-12-25 13:11

相关推荐

听说改名字就能收到offer哈:Radis写错了兄弟
点赞 评论 收藏
分享
头像
11-09 12:17
清华大学 C++
out11Man:小丑罢了,不用理会
点赞 评论 收藏
分享
评论
24
92
分享
牛客网
牛客企业服务