只接受发布货源信息,不可发布违法信息,一旦发现永久封号,欢迎向我们举报!
1064879863
16货源网 > 餐饮行业新闻资讯 > 商城网站建设 >  本科生如何才能进入腾讯,阿里等一流的互联网公司?


本科生如何才能进入腾讯,阿里等一流的互联网公司?

发布时间:2019-09-02 20:47:56  来源:网友自行发布(如侵权请联系本站立刻删除)  浏览:   【】【】【
我在IBM曾经接待过一位实习生,他不会Java编程,不会写文档,不善于沟通,性格内向,容易害羞。这位实习生在遇到我之前,从来没有经历过面试,也不知道IBM的实习生每天做什么。我足足培养他了2个月时间,
本科生如何才能进入腾讯,阿里等一流的互联网公司?我在IBM曾经接待过一位实习生,他不会Java编程,不会写文档,不善于沟通,性格内向,容易害羞。这位实习生在遇到我之前,从来没有经历过面试,也不知道IBM的实习生每天做什么。我足足培养他了2个月时间,直接传授项目管理、质量控制、绩效管理的经验,注意,此处是经验,我直接教他他如何去评审一个需求文档设计文档测试案例文档,我直接教他如何最快地从一群程序员中挑出几个有潜力和能力的人选。我还天天请他吃饭,次均超50元人民币。实习期结束的时候,他对我恋恋不舍,他说他要告诉身边所有的人,IBM对实习生无微不至的关怀,从正面影响了他的人生。他还送了我茶叶和咖啡。
我从来都没有告诉他,这一切,都是因为IBM很喜欢你的叔叔。他的叔叔是中国电力行业中一家巨无霸公司中的第三把手。

IBM不是互联网公司,但是我觉得这同样是“本科生如何才能进入百度,腾讯等一流的互联网公司”的一个答案。

hum,转产品经理了,AI方向,欢迎大家多交流。

**************************

世界那么大, 牛人那么多.

要努力, 要奋斗.

但是切记, 不要被自己感动.

2015.4.24 update.

*************************

刚结束校招,拿到几个offer,虽然是研究生,但是上研的时候基础为0。介绍一下自己的经验。


首先介绍一下自己的背景。

教育经历:本科和研究生都在西北边陲某一电器维修学院就读,电子/通信专业,纯非计算机。大一上过C语言,61分飘过;大三上过一门课叫《软件技术基础》,到研一才发现居然是数据结构;大四毕业暑期,下决心做码农,不会用VS写“Hello,World”,回去和室友说VS这个IDE好高大上,不会用。

技术能力:在实验室的项目只用matlab,自学C/C++,代码不超过2k行。没有能拿出的作品,没有完整的工程项目。

专业能力:到研一才知道ACM是什么,由于女朋友去北大就读不在身边,多出来的时间看了N多书(CS+金融+哲学+历史)。从小爱扯淡,本科混过辩论队,吹牛能力极强,不管专业非及专业都能侃一会。补充一下研究生的研究方向:机器学习/计算机视觉,发过一篇国内论文(best student paper),申请两项专利。研究生的研究也是从零开始,不过论文和专利都极水。

实习经历:在西北边陲某一创业公司(研发人员10+)呆过不到一月,了解了一些开发上的事情,对创业公司运作有了一定了解,技术上纯打酱油;14年暑期去帝都新浪微博做算法工程师,幸运地没有打酱油,从头到尾实际地做了一个东西,对面试吹牛有极大的帮助。暑期没有去BAT这样的公司实习的原因是各种原因挂了,人家不要我。


然后我给你讲一下一个这样的小白是如何通过2年学习拿offer的。

所需品质:耐得寂寞,坚持追求,坚定方向,身体要好。

耐得寂寞:别人在玩,你在学,很好理解。

坚持追求:请不要降低自己的追求。

坚定方向:路有很多条,互联网是一个大路,大路中还有pm、运营、rd等小路,想怎么走看你自己。

身体要好:科学学习,养护眼睛、脊椎、腰椎。我不是开玩笑。我坚持运动。

内功准备:看书、编程、思考、总结。

看书:各种经典书,扩展视野。我待会列个书单。

编程:实际上手做东西,东西不需要高大上,但需要你实际去敲。

思考:编程是练脑子不是练手指肌肉,不会思考必挂。

总结:看书、编程、思考不停的loop,然后不停觉得自己菜,总结自己菜在哪。

去找实习:校招预演、认识自己、认识朋友、实践学习。

校招预演:各大公司都有暑期实习招聘,不去投递的,浪费了一半机会。

认识自己:面试的过程中,你会不断认识自己的不足。

认识朋友:如果你是认真准备并严肃对待,你会结识很多志同道合的牛人。

实践学习:如果拿到offer,去公司实践,要主动找活干,不要被边缘化。

面试准备:狂刷题、写简历、多面试、拿offer。

狂刷题:《剑指offer》《编程之美》《编程珠玑》《Crack over the code interview》TopCoder Leetcode

写简历:不认真写简历的求职者都是耍流氓。

多面试:面多了你才有感觉。

拿offer:去痛哭一场,为了你的付出。


下面的东西我在两年,从纯小白到腾讯阿里,应届非计算机毕业生的2014互联网求职之路 中写了,这里再贴一下。



技术语言书籍推荐:

一,《C程序设计语言》。C语言圣经,废话不说,适合多看几遍。谭书入门看一遍即可丢。

二,《C++Primer》。过两遍,记住C++语法。中文翻译还不错,但有些地方仍有小瑕疵。建议看英文版,此书英文版非常容易看懂,且你从头到尾看完一本英文原著,对英文能力提高巨大。英文能力对程序员来说是重要的,先进技术、最新书籍都是英文版,且牛逼网站stackoverflow和github也是英文,作为程序员巨头大的问题——变量命名,英文水平的提高也是非常有帮助。API什么的我就不多说了。当然,看英文书籍速度是没有中文书快的。建议在看中文书籍对句子不理解的时候,翻看英文原版。

三,《Effective C++》。适合有一定实际经验者观看。

四,《Inside the C++ Object Model》。看完这个妈妈再也不担心面试官问我多态虚函数什么的啦。

五,《C和指针》。一般,不过其中一道课后题错了,自己敲出来后发现不对,去stackoverflow上提问,还增加了reputation,开心。

《More Effective C++》《STL源码剖析》《C++标准库》《C++程序设计语言》买了,翻过一些,没有时间细看。


操作系统(底层)书籍:

一,《现代操作系统》。Modern Operating System。重点关注进程和线程、死锁等概念。

二,《程序员的自我修养——链接、装载与库》。见过一个本科学弟看完这本书后在自己简历中写精通语言底层的链接、装载等,窃以为还没到那个地步。

三,《深入理解计算机系统》。CSAPP。中文书名很奇怪。

四,《鸟哥的Linux私房菜》。至少知道如何装linux,如何打开shell写个echo hello world。

五,《Unix环境高级编程》。APUE。看完MOS后看看,要实际敲代码。

六,《Linux命令行与shell脚本编程大全》。用了脚本语言你才能知道妈蛋C/C++真是烦。


数据结构与算法书籍:

一,《数据结构与算法分析——C语言描述》。小白刚开始看,真心累死。课后题很不错,适合都做做。

二,《算法导论》。后悔听信旁人言,说这么厚的书没必要看,到要用的时候再看。其实若能安心从头到尾看完算导,帮助极大。限于时间问题,我只看了此书的某些章节。


逼格提升书籍:

一,《黑客与画家》。当散文随笔看。

二,《Unix编程艺术》。在不同阶段看有不同感悟。

三,《代码大全》。翻翻看,学生阶段不看完全可以,不过有助于提高逼格。期待在工作后有更多感悟。

四,《浪潮之巅》、《数学之美》。当小说看,开阔视野。

五,《人月神话》。10个女人花1个月的时间是不可能生出一个孩子滴。


其他的都是重复,不贴了。

知识深度和广度,作为一个校招生,还没太多资格去评论。

期待更多面试官们来回答。


最后一句话:养成良好习惯。因为,优秀是一种习惯。


*******************************************************************************************************

补充一下:

一,发现怎么进入BAT的研发部门? - 知乎用户的回答 其实很好回答了题主的问题。觉得知乎应该设立一个“重复”按钮,类似stackoverflow,告诉题主,类似的问题已经有人问了。

二,列出的书单都是比较认真看了的。之前发现很多人喜欢贴书单,我也喜欢。我也贴一个我床上的书,占我总书量的一半。都是正版。

三,不赞同纯看书,理论+实践是王道。

四,BAT很大,人很多,工号都是几万后。嗯,就这样。

五,上铺同学说下铺的我是个大2逼。

今年参加的校招,知识方面楼上大神都说了,我就说下面试方面的吧

一般来说,技术岗有三轮面试的话,都会是leader,boss,hr,顺序可能变(也有可能是三轮技术面,然后打平均分or其中一个面试官看上你,直接要,猪厂今年在我们这边貌似就是这样)。基本上如果leader或者boss看上你,觉得你适合在他手下干活,就会直接要你。或者他们觉得你能力不错,也会给你名额,然后hr再视具体情况分配。

一份漂亮,整洁,主次分明的简历是成功的开始,基本面试官都会问简历上面的东西。个人成绩不好,专业知识一般,所以核心竞争力就是项目经验。可以根据自己的长处在简历上面表现出来,面试嘛,就是在不撒谎的前提下尽可能的推销自己。

还有就是可能会有些运气成分,我遇到的阿里巴巴的面试官特别凶残,上来就是各种计算机组成原理,被问得大脑一片空白,而鹅厂和MS的都比较温柔,问得虽然难,但都不刁钻,还会时不时的引导。基本上问的都是大学里面学的,四大考研课,尤其是计算机网络,HTTP和TCP每次都会被问。还会根据岗位不同问一些与岗位比较贴近的问题,比如面的客户端,android方面问的比较多,界面优化,适配等等。后台的话对linux的理解,框架的熟练程度,是否熟悉大数据云计算开发等等,具体的楼上大神都说了,不多加赘述,其实能达到他们的要求,我觉得应该都能拿到special offer了,可能还是我太水了吧- -

只要底子硬,到哪都不怕,最后祝题主能拿到心仪公司的offer。在公司附近开个外卖店,每天中午应该就能进去了渣硕的互联网求职经历,绝对的渣硕!最后拿到了bat中的两家offer,菜鸟们可以用来增加自信心!2015互联网校招总结2016年春招进的阿里,转眼间已经入职大半年,看到这个问题有种唏嘘的感觉。刚开始面阿里的时候也没啥经验,吃了很多亏,分享一下经历希望能够对后面的校招的同学能有所帮助

众所周知,16年阿里校招招人非常少,可以说基本没怎么招。原因大家都懂得,没hc嘛,目前阿里招人的政策是招三个人,开四个人的工资,干五个人的活。春招实习生整个集团大概招了500—1000人,听说校招只留300人左右,转正通过率不到40%,所以校招的时候非常不缺人,除非特别优秀的人,否则阿里基本没戏了。以后的情况不好说,但估计不会比今年好到哪里去。所以想进阿里的同学这里先打个预防针,能走春招走内推的就不要走校招,不然你连机会都没有。
接下来说下春招,面试的话大概会有3-4面。第一面是师兄面,层级一般P6,面的内容重点考察基础,算法占比很重,我当时一开头就是快排和海量数据去重。接下来会考察你的知识面,包括数据结构、计算机网络(http协议、tcp/ip不用想必考)、java基础(很典型的例如arraylist和linkedlist的区别、多线程机制等)、这个时候如果会针对性考察一下你擅长的技术。比如当时问我j2ee方面的内容比较多,还有java虚拟机方面的知识等等(比较典型的类加载机制、内存模型、垃圾回收算法等肯定是重点)。会linux也会成为一项优势。第一面一般是40-50分钟左右,不过也有例外(比如我当时面了1个多小时,面试的师兄面到后面说超时了然后马上掐住了哈哈。。)
接下来说第二面,可能是因为转了部门,然后又被一个师兄面了一次,还是P6(进阿里后已确认)。因为第一面面的非常不错,师兄给的评价很高,所以第二面比较顺利,师兄开头就说由于我之前一面已经被认可,所以他主要跟我介绍下部门工作,说是纯技术部门,不需要重复造轮子、而且偏底层,可能更有利于我的发展,当时听了觉得还是挺不错的,聊得还算愉快。期间还顺便问了我一些技术问题,包括平常项目开发用什么工具比较多、jvm性能调优等。
二面之后直接安排了三面,约在了第二天上午,当时接到的电话直接说三面在线编程,同时给我邮件了一个地址,让我好好准备一下。我一看,资深专家(来阿里确认后资深专家是P9)。当时还是挺紧张的,其实其他同学很少会出现在线编程这种情况,只好默认了一把倒霉了......第二天上午准时收到电话,面试官粘上题目然后就说开始吧,半个小时,show me your code.......题目是复杂链表的深度复制(后来发现是剑指offer的原题)。幸好之前刷过一下算法,简单跟面试官说了下思路,然后花了大概20来分钟(紧张的出了一身冷汗......)面试官看了看,又问了我几个数学问题,一个是数列相关的,还有一个是空间几何,很像压力面,一直问到底直到我答不出为止,好在我数学功底还不错(高中数学竞赛还拿过国奖),面的还行,面完后面试官问我有什么问题问他(每一面都会有这个环节),因为阿里春招较早,是我面的第一家公司,当时还没经验,就旁敲侧击了一下。结果被草草糊弄说等结果......
等了一个多礼拜后来终于等到了hr面,这里说一下,阿里hr面基本不会刷人(除非是hr确实觉得你价值观有问题...这就没办法了),hr面不聊技术,就随便聊聊人生理想就过了。
4月18号拿到阿里实习offer,前前后后花了一个半月,整个人都不好了。不过还好结果是好的,接下来其他公司也基本没面了,好好准备了下5月份就去阿里实习了。到这一步其实不容易了,但后面走过来才发现这只是开始......(T T)
本来听说16年阿里校招基本严进严出,只招A的学生,(阿里校招评级B、B+、A、A+),A大概是一个什么水平呢,说一个数字,2015年拥抱变化,3000个实习生只留A,最后就剩400个,所以你大概可以算一下占比。后来发现其实这里面水很深(后来转正时有部分B+升A了,也有部分A被降级淘汰了)。
5月份入职,刚好碰上部门转型,原在技术保障部,后来被分到移动平台(手机淘宝,也就是原无线),hc直接报警,因为手淘的hc很严,基本都是走一个才能空一个hc出来,事实证明后来转正的时候确实证明了这点......入职工作不说了,直接说转正。移动平台有一个惯例,叫做海豹突击队(其实就是给实习生集中起来进行一个封闭室培训,前前后后总共20天左右,海豹突击队的成绩直接关系到转正),这个培训给我们介绍了阿里手淘特有的淘系技术、技术规范、新应用从需求调研到研发上线的整个流程、以及集团众多的中间件技术。我们当时大概48个实习生(整个移动平台+基础平台)被分成10个组两个班进行pk,因为关系到转正,所以竞争非常激烈,期间没隔3-5天会有一次评审,期间会淘汰掉末2个组。那20天是入职以来强度最高精神压力最大最惨烈的20天,现在想想还有点心有余悸。具体情况不细说了,最后拿了小组第二。
海豹突击队之后过了几天就是转正面,第一面是主管面,因为部门研发资源很缺,主管想留我,所以这一面面得比较轻松,主管当时主要是针对我的一些情况给了些建议让我好好准备接下来其他面试官的面试。第二面是整个手淘基础架构的负责人,很出名技术很牛逼的一个P9,主要问题实习过程中的项目,因为部门转型,而且有过两次创业公司实习经历,所以做的事情比较多,也应付过去了,期间也挑了一些比较深的点像集团acl权限接入跟SpringSecurity的原理有什么相似点还有acl的hsf服务的底层实现(hsf是集团的一个分布式服务框架),基本都答上了,除此之外没怎么为难我。接下来交叉面,因为我是本科,感觉资历尚浅,实习的时候评级B+,转正升A需要交叉面试(所以说手淘的hc很严了,因为会有多轮淘汰)。交叉面试官是2016双十一技术总负责人,也是非常牛逼的一个P9。(其实经历过海豹突击队之后基本上把这些技术牛人认全了,因为大部分是海豹评委......大写的尴尬),一上来直接问我们海豹的项目,还好海豹表现不错(这里挺住了),接着问了我们项目用到的中间件技术,像TDDL(类似cobar的一个分库分表的中间件)数据切割(横向和纵向)是怎么实现的、还有Tair(K/V类型的分布式缓存数据库)的几种引擎的区别等等,问的还是非常深的。三面完感觉松了一口气,当天饭点时间hrg给我发消息说简单找我聊下,因为当时跟交叉面时间距离间隔半个小时所以推掉了,改成了第二天......结果这里就悲剧了(现在想想都是命啊......)。第二天因为时间原因,各大面试官都比较忙,而且离集团转正截止日期只有一天了,然后hrg把自己下面的9个实习生叫到一块,同时叫了三个交叉终面官过来(都是P9)来了个技术大群面。前前后后面了3个小时,一开始就是集团中间件的深度理解,然后手写代码,相互纠正.....当时的场面只能用惨不忍睹形容。因为大家都是不同技术栈,有WEEX项目组的前端(WEEX是淘宝跨三端的框架)、安卓、ios、算法、测试、后端等,算法写出来大家有python、java、c++、c#、go、js各种版本。结果怎么样不用说,我们9个后来转正的一开始包括我在内好像就通过了2个人......(人艰不拆了)。
所以说有时候转正其实比实习面试还要残酷,现在想想,在这样一个竞争激烈的环境,这大半年一路走过来确实挺不容易的。部门里的挑战就不说了,刚碰上转型也挺艰辛。但是从技术视野、工作能力、心态以及各方面的综合素质都有突破性地成长。总之阿里虐我千百遍,我待阿里如初恋……以致于后面华为开了个很有诱惑力的价格还是选择了阿里......努力还是有回报的吧,推荐的书籍高赞回答已经列举了很多,这里就不列举了,希望对下一届的同学能够有所帮助。南方之强,伪985,软件学院 今年我们院大概去了四五个腾讯的
特点:
1.绩点都是前列,并不是最拔尖的
2.自学能力很强,大二就开始上手实际项目
3.情商很高,人际关系一打一片
4.长的都很好看
5.家庭条件都很不错
6.爱好广泛

至于有人说“认真学就可以”,我觉得还是有点naive。
毕竟认真学的人多了去,但是认真学了还能兼顾社交和爱好的人,不多啊。

记得这个问题还是今年实习生春招时关注的,当时还没经历过面试,现在都已经在阿里实习三个多月了
先简单介绍一下自己的情况吧:普通一本院校(非985/211)本科生,校招拿过BAT的offer,实习面试时没有项目经历,还好参加过两年acm比赛,拿过省赛和亚洲赛的金奖

这里抛砖引玉,写一下自己内推面试阿里的经历吧:

一面:一面的面试官是同组的一个师兄,那时答主还没啥面试经验,刚接到电话略紧张,还好面试官非常nice,先让我聊了一下acm经历暖场,然后才开始问一些基础技术问题,内容涉及数据库(索引),操作系统(分段分页等),计算机网络(tcp/ip,http)等,再然后面试官就问我Java学得怎么样,因为答主参加acm的时候基本都是在用C/C++,所以就照实回答说Java会一些基础的东西,Java Web方面的东西不懂,面试官笑着说没事就开始问数据结构和算法方面的问题,问了一个treemap和hashmap的区别与优劣,其实对应一下数据结构就是问红黑树和哈希表,然后又问了一个旅行商(TSP)问题,熟悉acm的朋友都知道这个问题直接记忆化搜索或者dp递推就可以解决了。 差不多面了四五十分钟,面试官说对我评价不错,让我等一下之后的面试

二面:二面就是我现在的leader了,因为一面面试官对我评价很不错,所以这一面他没问我多少技术问题,问了一些关于acm以及大学经历的问题,感觉主要是看一下我这个人怎么样,然后说帮我走一下流程,然后就进入到了漫长的等待中

三面:终于在等了一个月以后,进入到了三面环节(此时答主已经面完了腾讯),这次面试官略严肃一些,问了一些Java的基础问题(多线程,死锁等),然后又问了tcp/ip协议,流量控制之类的网络问题,一些linux问题,问的问题都蛮有深度,答主勉强作答,而后问到JVM的一些问题,答主只能照实回答不会,最后给了一个字符串算法题,答主给了三种算法和复杂度分析

四面:三面后第二天下午就接到了四面电话,这次的面试官C++非常熟,直接问C++11的一些新特性(比如auto之类的),然后开始问STL库中的数据结构实现原理,比如vector,set等,然后又问指针和引用的区别,问了一点数据库问题(有关sql和nosql的),最后问了一个图论算法问题,答主也给了三种解法。

五面:四面的当晚就接到了五面电话,问了一些关于linux的问题(系统调用和用户调用区别,用户态与内核态的切换等),问了一下排序算法然后让答主说了一下这些算法的实现原理以及复杂度分析(比如快排,归并的实现等),还有死锁问题等,然后就聊了一下acm的经历,比赛时如何带队等。因为感觉这面面试官非常亲切,全程交流感受都非常好,最后时聊到了offer问题,我就照实回答说腾讯那边已经给了offer周末时就要签约,想问一下这边大概还要多少轮面试,然后面试官笑着说可能还要一两轮吧,然后说今天面试了好几个,觉得答主技术和交流能力都挺好,然后说让我再等一下流程

六面:五面隔后一天接到的六面电话,HR面,聊了一些大学经历,个人性格等,为什么参加acm等,然后说下周应该还有一轮交叉面试(周末时腾讯就要签约,答主也纠结了一下,最后决定继续等)

七面:交叉面试,来自其他BU的面试,聊的时间不长,问了一点数据库的东西(索引,B+树等),面试时间不长,这面结束后没过多久就拿到了阿里的实习offer。

再来写一下暑假实习和转正吧,答主的实习岗位是Java工程师,但是因为之前主要写C/C++的原因,刚来的时候直接一个Java工程扔脸上,那种感觉真是难以形容...不过好在师兄和leader都比较关心,答主在暑假实习期间确实感觉到自己的工程能力的进步,再加上阿里系的中间件的学习,确实很大地拓宽了知识视野。
转正面试由好几个面试官组成,其中有两位都是部门大Boss级别的,问了很多问题,比如实习间完成的事情,中间件的问题等。之后答主又经历了一轮跨BU面试,然后才完成了转正,现在回想起来从实习到转正真的是一轮漫长的心理拉锯战...

其他公司的面试也经历过,不过答主觉得还是阿里的这一系列面试更为深刻些,个人感觉其实面试就是一个双方交互的过程,而且就校招而言,答主在面BAT的时候都有不会的内容或者答错的地方,但是依然拿到了offer,这个与acm不同并非是一组数据过不去就一定会导致fail,面试官更多地是会根据你会的东西对你进行考察,尤其是像BAT这样的大厂,除了考量你的技术能力以外,同样也会看重其他方面:比如自主学习能力,团队意识以及性格等。另外就是面试时的信心及交流能力,答主身边也有很多能力不错的同学,但是面试时也因为交流能力以及信心不足吃了亏,个人觉得还是挺可惜的。

大概就写到这里吧,关于技术书籍等东西其他大牛珠玉在前,答主作为一个本科菜鸟也不班门弄斧了,希望这个回答能给之后看帖的同学一点帮助吧

就没读研然后进了阿里,而且都没怎么面试。

但是在进阿里之前就折腾了很多事情,也做了很多产品,写了很多东西,认识了这个行业的很多人,也对自己这块感兴趣的领域有了更深的理解。

有一句话叫,机会是给有准备的人。所以你要使劲的造,在自己感兴趣的领域造上10000小时以上,即使你是小白,花了大量时间也基本上都熟门熟路了。然后又有人说了,我也花了很多时间在自己的领域,但是还是不是太懂,那这就是螺旋上升的1万小时和原地踏步的1万小时的区别,关键在于要思考。

成功是99%的汗水和1%的机会,其实当你真的很牛的时候,机会也就随之而来。“谁谁谁很厉害啊!”“给你介绍个我们很厉害的大牛啦”之类的就回络绎不绝。当然自己也要多认识些在BAT的学长啊,了解第一手的招聘信息等等,这些都是努力的结果。

简单的说,1.增强自身核心竞争力 2.机遇

首先,你需要知道BAT之类的互联网公司面试的一般流程:

1.笔试(如果内推,一般可免笔试)

2.电话面试(1轮,随机)

3.现场面试(3-4轮)

  • 第1轮:基础技术面(简历、基础知识、算法)
  • 第2、3轮:高级技术面(业务相关知识、算法)
  • 第4轮:leader面或HR面(以三观为主)

其次,你需要知道BAT之类的互联网公司面试的风格套路:

1.注重基础知识的掌握,讲究细节,知识点繁杂

2.综合考察多方面能力

3.从一道题目切入,深入问很多相关问题

接下来,就是你所需要做的准备:

1.把握求职面试的关键时间点

  • 前一年12月-3月:刷LintCode,准备笔试面试相关题目
  • 3-8月:实习面试、实习、校招准备
  • 8-10月:校招笔试面试高峰
  • 10-11月:收offer

2.准备简历

  • 单页原则
  • 实习经历>项目经历>获奖情况
  • 重点展现技术相关内容,无关内容删掉
  • 项目要写明你做了什么?怎么做的?你的贡献是什么?
  • 谨慎使用“精通”、“掌握”这些词
  • 对简历上项目的每个细节都要深入了解

具体的简历问题可以参考下列文章,或者关注九章算法(ninechapter)微信公众号,后台回复“简历”获取IT简历模板:

简历 | 最容易忽略的10大简历问题, 你都做到了吗?
技术简历的七要七不要
求内推/投简历前,检查你的简历是否犯了以下低级错误!
如何写好一份技术简历?

3.刷题

面试中经常考到的知识点如下:

算法部分

二分搜索 Binary Search 
分治 Divide Conquer 
宽度优先搜索 Breadth First Search 
深度优先搜索 Depth First Search
回溯法 Backtracking 
双指针 Two Pointers 
动态规划 Dynamic Programming 
扫描线 Scan-line algorithm
快排 Quick Sort

数据结构部分

栈 Stack
队列 Queue
链表 Linked List 
数组 Array 
哈希表 Hash Table
二叉树 Binary Tree  
堆 Heap
并查集 Union Find
字典树 Trie

刷题可以帮助你快速回顾、理解上述知识,你需要分两个时间段进行不同目的的刷题:

  • 前一年12-3月份:广泛刷题,你需要做的是把Lintcode 上的题目至少70%的题目刷两遍,做到60%的题目bug free。题目的标准答案,你可以在 Lintcode参考答案查询 上找到。
  • 3-8月份:有针对性地刷题,你需要做的是把 Lintcode阶梯训练 上的精选题目刷一遍,尤其是要刷 IT企业技术面试精品真模拟试题 ,最好是反复刷,从中摸索出IT企业的面试套路。

如果有条件的话,可以参加一下九章算法班和九章算法高频题班,能够帮助你获取最新的面试动向,系统有效地准备IT企业面试,冲刺各大名企,近期这些课程都有免费试听活动,报名可以戳:九章算法精品课程免费试听

4.了解公司

你需要从以下几个方面了解公司:

  • 企业文化。你需要看这个公司的氛围是不是适合你的发展。
  • 薪资待遇。这是最最实际的部分,可能也是应届生选择工作时考虑最多的部分,不要仅仅局限在薪资上,可以看看公司整个福利体系,比如保险、假期、股票等等。
  • 晋升机制。公司是否重视人才?是否重视对人才的发展和培养?是否容易晋升?...你需要选择的是一个可以给你上升空间的公司,会对你的成绩和努力给予肯定的公司,只有这样才能有不断向前的动力。
  • 工作环境。一个好的工作环境对于员工来说绝对是一种福利。公司加不加班?公司的办公室怎么样?公司的食堂怎么样?公司的同事怎么样?...这些你都可以通过各种途径去了解到。

5.临场发挥

面试前一定要看一遍《硅谷精英工程师面试指导大全》,牢记其中的面试方法和套路。

不要把面试当成是一次考试,而要把它看成是你与未来同事的一次交流。你需要时刻保持自信,保持平和的心态。

在面试结束的时候,无论感觉如何,一定要和面试官说一声“谢谢”,这既是对面试官花费时间面试你的一种感谢,也是为你增加好感度的一种方式。


欢迎关注我的微信公众号:九章算法(ninechapter),帮助你了解IT技术前沿,通过面试、拿到offer、找到好工作!

校招进去那是很难,
如果真想进去养老/镀金,
最稳的办法是绕道进去:

先去个不差的(二流,但有点名气)互联网/游戏企业,混点好项目,学点真本领,多认识点圈内人熬个一两年。再等这几个一流的企业(阿里,腾讯)社招,找猎头/关系推荐,进去。

如果直接去不了二流企业,那继续绕道到三流,再进二流,最后再进一流。稳稳的。

在知乎上沉寂了很久,上一次也是唯一一次,认真写一个长答还是两年前。我很懒的。但是毕竟快结束学生生涯了,还是赶紧抓住最后一小笔闲暇时光来知乎上扯个淡。

自我介绍一下,武汉大学国际软件学院2017届本科生,再过两天毕业。

去年校招拿到了B家的Offer。T家研发校招是一轮跪。A家似乎是因为斗胆投了算法工程师,又缺乏相关背景,直接被筛了简历。除此以外主要还有亚马逊、微软跟今日头条的offer。

因为觉得做的事情很有意思,再加上一直以来对头条技术驱动的公司文化抱有好感,最后接了今日头条的邀约,去个性化推荐组做推荐算法。直到今年三月份刚去实习的时候,leader称赞我是去年头条校招反馈最好的几个候选人之一,才知道去年校招算是撞了大运。头条的几个核心部门招聘标准还是挺高的。


好了,不扯远。接下来分几点讲讲,从我个人的视角来看,校招最重要的素质都有哪些。

首先是项目经历。在国内找工作,尤其是非微软、谷歌等外企的情况下,这往往是重中之重。当然,作为本科生,尤其是处于正在找实习阶段的本科生,这点要求可以相对放缓。

在最理想的状态下,你应该讲出能够让面试官听懂的、让面试官觉得你牛逼且方向对口的项目。这三点按重要程度从高到低排序。

你做的事情应该能够让面试官听明白,这是最低也是最重要的一个要求。项目low不要紧,哪怕是讲课程设计,也聊胜于无。把话说清楚就行。毕竟哪怕项目不合心意,面试官还是可以转而从你扎实的专业基础或是灵活的解题思路上寻找亮点。

面试终究是发生在人与人之间的一种羁绊。问答与交流只是一种手段,对于求职者而言,终极目的还是为了调动面试官的情绪,建立对自己的正面印象。能让面试官对自己产生钦慕之心,自然是最高的追求。反过来讲,面试很忌讳在两人之间形成一种微妙的龃龉。一个没给人家讲明白的项目,就像聊天群里除了你以外没人get到点的冷笑话般尴尬。不但没有意义,兴许还会产生负面作用。作为未来同事的候选人,面试官难免要因此质疑一下你的交流沟通能力能否Hold住可能的项目合作与交接。

说到这里突然想起一个很多搞竞赛的同学会遇到的尴尬面试题:总会有一些不知道acm竞赛有几个人组队的,b面试官,在你做完自我介绍以后,冷不丁上让你直接给讲一个在acm里做过的最难的算法题。毕竟术业有专攻,面试官不懂不能强求,这不是他的过错。 可有些比较实在的同学,这时候就会真的给上一个爆难的算法题来维护竞赛选手的尊严。大致讲一遍解题流程,他不懂。接着细讲。结果四十分钟过去了,你会发现你们还在绕预处理数据时用到的一个小结论是怎么来的。面试官看时间到了,就客客气气请你回去等消息,换下一位进门…… 这样的故事我听多了,反正至今还不知道有谁在这种情况下最后面试通过的XD

毕竟生活在这世界上,谁不是一座孤岛。没有理解也就没有爱。面试也是同理。

然后是,你需要面试官觉得你牛逼。如前面所说的,这种牛逼构筑于被理解的基础之上,是项目经历的核心所在。

牛逼这个词其实微秒,说复杂也复杂。但说到底仍然是一种情绪、一种主观的印象。举个不恰当的、极端的例子:一个好项目,如果是放在一本学生身上,面试官自然会认为你优秀。但如果是个三本出身的倒霉孩子做的,也许面试官可以留下更为深刻的印象。

你的项目最好在被面试官充分地展开、理解之后仍然被认为是复杂的。这种复杂性可能涉及艰辛的公式推导、精巧的代码结构或是用上了炫酷而繁琐的技术特性。这些都是相对客观的指标。然而互联网嘛,技术栈划分细、变化快。老道的面试官并不特别关心你做过什么,他会转而透过你的这段项目经历,去观察、揣摩你的智力、好奇心以及执行力分别到达了怎样的程度。

这里我的建议是,分配好精力。花大量时间,精心准备一个“牛逼”项目。毕竟,复杂的世界里,一个就够了。事实上你那几十分钟面试时间里也就够你们详谈一个项目。人的错觉有很多种,第一印象的效应尤为明显。又或是八二原理、马太效应、路径依赖…… 作为一个有志于盅惑人心的面试者,你得把自己想象成是一个剑客,十步杀一人、光速出剑、一击毙命。只要心够决,去把一个项目做好、做深、做到极致。做完以后再深入了解项目细节,包括上游客户需求、下游开源工具特性和原理、可行优化方案以及后续可能的开发方向。这是你的使命,只能一次成功,不容许失败。

举个例子,记得15年的7月份那会有一篇爆款论文,关于如何利用神经网络训练一个转换艺术风格的迁移学习模型。如果你作为一个两个月后找算法工作的大三本科生,那么把论文细细读了,公式全部会推,写靠谱代码把项目做好。在面试前再把相关算法原理跟实践中遇到的困难以及你攻坚克难的过程耐下性子理清楚、面试的时候讲明白。是不是显得很有含金量、很能体现个人动手能力与技术好奇心、在一群连基本的k-means都写不好的校招生中,陡然间鹤立鸡群了?

除了让面试官理解你牛逼以外,方向对口也重要。毕竟校招统一面试,如果没有恰到好处的内推,往往是需要部门主动捞你简历约面试的。又比如过了谷歌的面试,后续也还是需要做team match。很多时候去哪不是你说了算,而是你的简历起决定性作用。另外方向对口对于面试本身的重要性更不必多说。就算是校招,相同水平下谁都更想找熟练工吧。

所以你得提前很久想清楚自己想干什么,提前做准备。找工作这件事很多时候是蝴蝶效应。也许偶然帮老师做了个项目,然后主要靠这个项目找了个实习接着做相关方向,最后的正式校招就很可能这么一直续下去。最好从一开始就不要将就。有道是,Fuck everything,but growth. 想清楚做什么才是有用、有效率的。比如本科毕业就打算工作的,如果真的想做机器学习算法,那么我认为极端情况下,宁愿去有活力的小公司做算法岗,也别去谷歌做前端实习。其实一次实习的机会成本还是挺高昂的,而实习的title在最后的校招中也未必如你想象得那么有用。

我个人曾因为在微软实习的项目相对零散而兴趣不相关,在去年校招的过程中甚至直接将这一段实习经历删掉,以避免与面试官在这一点上陷入尬聊的窘境。

然后是专业基础知识。正常情况下外企在这里不会做太多要求。而BAT三家都会考察基础知识,且各有侧重面,这个你们具体还是要看面经。不同考察方向都有哪些常见知识点,你们随便一搜都有。最好能结合之前的专业课所学,在具体的面试知识点上深入下去,了解细节。

当然大学前几年能把计算机组成原理、计算机网络以及操作系统等几门专业课基础先打牢了,会好很多。我承认,本科的CS教育往往扯淡,但是我建议该上的课还是应该上一下的,哪怕自己跟着书本自学。不去上课,你的自制力恐怕没有想象中那么强。

这些基础课程对以后的职业生涯会有潜移默化的影响。毕竟,计算机上的设计思想,很多地方都是可以互相借鉴的,这些知识会成为你以后解决工作中遇到的棘手问题的灵感来源。而且这部分知识都是成体系的,等工作了以后就没有整块时间去啃了。劝君惜取少年时。

面试中所涉及的另一个重要部分是算法题、代码题,以及一些智力题。

这一块我比较有心得。面过不少公司,基本还没有不会做的题,最多偶尔在思考过程中卡一下。除了有一次面试官让我写快排,我写完以后改了一次还没写对。

面试时间有限,问到的题目都不会太难的。当然也看候选人背景,经历以竞赛为主的就会给难一些的——不会涉及太繁琐的分析,往往只需要你灵机一动。记得我曾临场解决了“2n+1个数,n对一样的,找不一样的”,以及“3n + 1”和“3n+2”版本的素质三连。还有一次电话面试,因为一个智力题答得太快,面试官认为我是用电脑查的答案。

这里还是有一些技巧的。不太好用语言表述出来,就像篮球一样,要在实践中练习投篮的感觉。所以多争取面试机会很重要。我自认为心理素质算是不错的,但是最开始经历的几次面试,都会因为紧张而产生智商滑坡的情况。

面试算法题、思维题,也是一种测试团队协作能力的方式。面对算法题,有经验的人往往会建议你,不要急着给出最优解,先讲基本方法,可以暴力一点,然后慢慢优化。这很有道理。其实最好能按一定的节奏来一步步地展现你的思考过程,甚至遇到不太会聊的面试官你得自己学会去引导,掌控面试的节奏。甚至有的时候,你给讲一些你觉得很靠谱的思考路线,面试官也会主动提醒你,想歪了。或是另一种情况,饶有兴致地陪着你按照新思路想下去,最后不论是否能解决问题,往往都会觉得你想法不错,是个面试加分项。

实在没有好思路的情况下,试探性地讲些模糊的大体思路也比过久的沉默要好。哪怕随便瞎讲点什么,面试官兴许会提点你一下,继续观察你接下来的表现。用考场上的话来讲,面试中要学会尽量拿到步骤分。如果你以一个人冥思苦想的方式玩命怼一道难题而不得,中间过程一言不发,那么好比是考试交白卷。

最后,在校招前,争取做一份实习。

如果你在武大国软这种自由放浪的环境下,从大一开始出去实习,到校招前实习个四五次完全存在理论上的可能性。实习次数多了,你也就可以循序渐进地换更好的公司,跟更牛逼的同事做更牛逼的项目。至于结识朋友、邂逅妹子、开阔视野什么的更不在话下。

而对于大部分中规中矩度过前三年本科生涯,基本功还算扎实的同学来说,大三暑假的实习期将会是一个补充项目经历的大好机会。最好能争取一个稍有难度的、相对独立的项目好好做。这是你将来的几个月冲刺校招的主要资本之一。



最后,作为一个毕业生,一个行将凋零的老兵,再多讲几句不切实际的大道理吧。这些话很想讲给多年前的我自己听,但是不现实了。沉舟侧畔千帆过,现在我把积淀后的思想赠予你们。

首先,快速迭代自己的方法论。

很多孩子在刚上大学的时候,因为太习惯于被父母老师安排的人生,往往只重视战术,不懂得经营发展战略眼光。

大局观很重要。有的时候只是只言片语,一点小小的信息素,就有四两拨千斤的效果。人与人之间在判断力上的差距其实很重要。在一些关键的决策点上,如果能稍微提高百分之一的准确率,乘上可能的潜在收益或是损失,都会是很大的数学期望值。

记得去年冬天参加叉姐的camp的时候,覃超过来给我们做过一次讲座。提问环节的时候我问他,在曾有FB面试机会的情况下,直接去CMU读书,是否考虑过不妥。他说,这是他人生最后悔的决定之一,如果早入职几年,存在获得数百万美刀期权的可能性。

如果让现在的我回到大学报到的时候,大概会出去做很多次实习、多认识很多朋友、去折腾很多奇怪的项目,甚至刷语言绩点准备出国。可是那时的我什么也不懂,这种状态持续了好几年。现在回想起来,本科时代的大部分事情我都做错了,做对的判断只是少数。

基友 @WenjieTan 在校的时候,曾经运营过一个“咖啡之约”的公益活动。学弟学妹们请已经身为成功人士的学长喝咖啡,讨教学长学姐的人生经验。我觉得就很不错。

从个人角度出发,如何高效率地获取信息以及反刍,也是一个很有意思的课题。举个例子,你可以考虑挑选一定数量的靠谱微信公众号来了解互联网信息,不要多,控制在每个公众号的推送都能定期读完的关注规模。当然,其实互联网圈的媒体人写东西都有点虚浮,对不同的观点你要有自己审慎的判断。

上述的例子只是抛砖引玉。其实解决信息不对称,甚至是构筑自己相对于常人的信息壁垒,仍然有很多可行的方法有待探索。年轻人可以多尝试、多试错。毕竟年轻没有失败,等级低就是复活快!

第二点是,不要怂。

这一点我深有感触。尤其是针对学CS的孩子来说,很重要。这个专业出身的同学,往往家里不是很富裕,见识不够广,不够自信。甚至有些还会因为过于敏感多思,反而过于独善其身,存在与人交流的障碍,又或是做事情瞻前顾后、缺乏决断,聪明反被聪明误。我也见过很多人,当本可进取时,却故作谦卑,因为不愿承担过大的心里压力,错过了唾手可得的面试、出国、比赛机会。

我在读大学以前,一度非常自闭,不爱与人说话。这几年下来改变了很多,虽然仍有轻微的社交恐惧症,但只是面对陌生人会有点难受,正常交谈是没有问题了。事实上我心里清楚,我是花了大力气来打磨自己在这方面的性格缺陷的。

我常常分析,为什么会对他人感到恐惧呢。后来发现,因为我总是习惯性地在潜意识里预设,他人、或是某个外部事物是完美的。但经历了很多之后又发现,没有什么是完美的,均值回归是普遍存在的现象。事物的诸多美好品质之间并不存在绝对的因果关系,往往只是弱相关。高大上的互联网公司、遗世独立的牛人、狂拽酷炫的技术,只是世人所见的一个片面。哪怕是那天上的月亮,也有圆缺,存在暗面。

本该是不卑不亢的平等交流,却因为过分谨慎而表现得小心翼翼、唯唯诺诺。我也曾因此错过了爱情。

最后,有自己的追求。

这点见仁见智,不强求。像大多数人一样,我也总是在思考,人生的意义是什么。

成长的过程中,我发现身边的大环境是,总是会预设一个最优路径。比如,中学时代大家的注意力都在高考上,觉得上了好大学就可以万事大吉。搞竞赛的同学容易认为打好ACM就可以获得一切。CS专业的同学整日想法设法地想要进BAT、谷歌。投资人对共享单车、共享充电宝这些项目趋之若鹜、蜂拥而上。

然而,名校是终点吗?ACM World Final是终点吗?Google优雅舒适的工作环境里和身为谷歌员工的逼格是终点吗?无论是成绩突出的高中学霸,还是表现优异的大学生,在获得了满意的结果,进入人生的下一个阶段以后,还是会有很多感到迷茫。像艘驶入无人深空的太空飞船那样迷失了方向。

或许从一开始我们就错了,不该过分执迷于一个成就、一个被预设为完美,得到之后却终究归于平淡的的title。

叔本华说,人生就是在痛苦和无聊这二者之间像钟摆一样摆来摆去:当你需要为生存而劳作时,你是痛苦的;当你的基本需求满足之后,你会感到无聊。

我想,人生本来没有意义,痛苦欢快不过是虚幻。

而创造,是生而为人的唯一救赎。

Stay hungry, stay foolish.

首先学校要好一点。
其次就是多写代码,用用开源项目也好,自己写项目开源也好。不要担心自己写得烂,一开始都这样,而且开源项目本身就不代表高质量代码。
这个过程切忌闭门造车,多看看别人实现同样的功能是怎么写的,这个东西对应哪本书什么内容,怎么直接利用别人的项目来实现自己的功能,怎么让自己的项目清晰有效地给别人调用。
最后就是校招前刷刷算法题,看看面试宝典之类的重拾计算机基础知识。
其他的,就是看看知乎上这些大神们每天都bb些什么,多了解一点东西,拓宽知识面。
最后还要放轻松心态,面试也很看脸的,特别如今竞争越来越激烈了,录谁不录谁,你要给面试官一个足够深刻的理由。


前几天,阿里巴巴成立十八周年年会在杭州举行,汇集了来自全球70多个国家的4万多名员工,其场面之盛况不亚于任何大型活动。有人调侃:阿里这才叫年会,其他公司年会那叫小聚餐。很多网友称:这辈子能进阿里工作,是我的梦想。

这两年互联网很火,不管是阿里、百度、腾讯,还是其他互联网企业,其薪资待遇普遍比其他行业高得多,互联网行业就业成了一种潮流,但很多大学生因为所学专业与互联网行业无关,造成进入互联网行业的难度加大。

有一个网友问我说:他读的是土木工程专业,目前在国企工地上班,工地上工作很无聊,天天晒太阳,还没有妹纸,如何才能转行跳槽互联网企业工作?

今天,我们就来好好说清楚一下这个问题,希望能够对正在想跳槽的你有所帮助。

一、互联网企业需要什么样的人才?

要想成功应聘互联网企业,首先必须弄清楚,互联网企业需要什么样的人才,再根据职位的需求,我们把自己训练成他们需要的那种人才即可。

我们来看看专注互联网职位招聘网站拉勾网首页。



从拉勾网首页不难看出,互联网企业招聘的职位主要有:技术、产品、设计、运营、市场与销售,还有行政职能累职位。而这些职位中,哪些离互联网最近?无非就是技术、产品、设计和运营。

1、技术岗位,你是否能应聘成功?



技术岗位对技术、工作年限的要求很高高,作为没有技术,跨行的你,基本没戏。

2、产品岗位,你是否能应聘成功?



产品岗位需要熟悉很多软件,比如上面的Axure、VISIO、Mindmanage等软件,如果你在工地上“搬砖”,上面这些软件你恐怕听都没有听说过,作为要跨行的你,同样基本没戏。

3、设计岗位,你是否能应聘成功?



看完技术岗、产品岗和设计岗,你绝望了吧?上面三种岗位,没有过硬的技术和一定的工作年限,基本应聘不上。不过不用担心,我们还有运营岗。

4、运营岗,你完全有机会应聘成功。



上面是拉勾网上一个新媒体运营岗的职位描述,需要技术吗?不需要,最多要求你懂一点PS。说白了,新媒体运营岗只需要你具备一种能力——会编辑内容推动信息;你工作的表现好不好的原则也很简单粗暴——你发的信息能圈粉,有人看就行。

而且,最近两年运营岗缺口很大,市场上供不应求,造成很多行业对人才的要求在降低,作为一名大学经过高考,有四年大学经历的你,编辑一点内容,推送微信,发微博,难度不大吧?

所以,综上所述,要想直接从其他行业立刻跳槽互联网行业,唯一的选择,就是应聘互联网运营岗。

二、应聘互联网企业运营岗需要做的准备。(以新媒体运营为例)

1、确立求职目标。

假设你的求职终极梦想,是进BAT等明星互联网企业。但你现实最要紧的,是完成转行干,到互联网行业工作,或者是干上和互联网相关的工作。

2、投简历之前的准备。

确立求职目标和当下转行首要任务之后,我们就要做好相应的求职准备。

运营岗不就是在微信、微博、知乎、或今日头条等系媒体渠道推送信息吗?那了解渠道是新媒体运营专员的必修课,这样你需要每天使劲刷微信公众号、微博、头条、知乎等互联网产品,熟悉了解渠道的特性。

最佳的方法就是,你可以注册一个微信公众号、微博来自己发文章、发微博,有什么不懂的百度上,知乎上学习干货,掌握新媒体运营最基础的技能——发送信息。

这样做有什么用?面试时候有话说,了解渠道之后,你可以在面试官面前娓娓道来,那自然可以为你面试加分。

三、八个应聘策略供你选择。

当我们做好应聘运营岗之前相应准备工作(了解微信、微博、知乎、头条等渠道后),我们开始投简历,而投简历,按照顺序排,有以下八大策略,值得你去参考。

1、你可以直接应聘一线城市的BAT等明星企业新媒体运营岗(要求比较高)。——如果不成功,降低要求走下一个策略。

2、应聘一线城市BAT等互联网明星企业非运营岗职位,比如市场与销售。因为市场和销售岗和互联网相关度不高,通常要求也低一些。——如果应聘成功,你想干互联网相关工作,以后在公司熟悉之后,可以申请内部转岗;——如果不成功,降低要求走下一个策略。

3、应聘二三线城市BAT等互联网明星企业分公司的运营岗(二三线城市人才紧缺,对人才要求相对低一些)。

——如果成功,那通过努力工作表现,完全可以申请内部推荐到一线城市工作。如果没有机会,你辞职,在具备明星企业运营岗职业背书后,跳槽到一线城市其他互联网明星企业工作,也是指日可待。——如果不成功,降低要求走下一个策略。

4、应聘一线城市非互联网行业,其他行业大公司的互联网运营职位(因为在这样的公司,网络推广部门不是他们的核心部门),比如被高度互联网化的教育培训行业。

——如果成功,在你具备非互联网行业的明星企业的职业背书后,跳槽到互联网明星企业也是容易的。(注意:不管在哪个行业,有明星企业职业背书很重要。)——如果不成功,降低要求走下一个策略。

5、应聘一线城市三流互联网企业的运营职位。——如果成功,努力工作,有互联网行业工作经历后,努力工作,通过跳槽,慢慢提升自己的平台,最后就有希望进入互联网明星公司。——如果不成功,那降低要求走下一个策略。

6、应聘二三线城市非互联网企业,其他行业大公司的分公司的运营职位。——如果应聘成功,有明星企业的互联网相关经验,可以跳槽到一线城市的三流互联网公司,再努力工作,跳槽到一流互联网企业。——如果不成功,那降低要求走下一个策略。

7、应聘一线城市,非互联网行业小公司的运营岗。——如果应聘成功,可以跳槽到一线城市三流互联网公司,再通过努力工作不断提高自己的平台,最后进入明星企业。——如果不成功,那降低要求,走下一个策略。

8、应聘三线城市,非互联网行业小公司的运营岗。——如果成功,具备工作经验后,跳槽到三流互联网企业,再不断提高自己的平台。——如果不成功,那你不适合从事互联网工作。

四、总结

互联网没有那么神秘,互联网只是一种工具,如果你懂技术,会编程写代码;懂产品,会写需求文档;懂设计,会做UI交互设计,这样你进入互联网企业工作比容易,因为只写职位是负责创造互联网这个工具,而运营职位考验的是一个人是否会利用互联网。

要想进入互联网明星企业,必须遵循三个原则:

第一、优先选择互联网企业;

第二、优先选择大公司;

第三、优先选择一线城市。

如果都满足不了上面要求,那就退而求其次,然后再农村包围城市。

欢迎关注个人微信公众号:职场小饿魔

看了各位的回答,都是长篇大论,实在是无心看完那么多理论。

现在进入腾讯、阿里、百度一般分为两个步骤1.社招.2.校招

1.社招要求

BAT的社招要求都会比较严格,学历要求至少是本科,有些岗位还要求必须是985,211的毕业生。

经验的要求,这个就不好说是要求1年还是10年工作经验,一般都会选择和之前从事的岗位类似的求职者。比如之前是JAVA工程师,那么新岗位都会安排JAVA工程师。也有特例,不过这个根据你的能力和BAT内部人员推荐。如果内部项目组觉得你不错也会要求人事部门特事特办。

社招的员工都会有背景调查,岗位越高调查越仔细,想要通过修改进行包装蒙混过去是比较难的。

背调除了调查你原工作岗位、薪资等基本信息,还会调查到你的口碑,如果你原公司老大给你很多认可和赞许是加分项。

2.校招

分两种,一种是以实习生,一种是职员。实习生岗位一般都会在很多专门做实习生的平台上找到,你去投递简历,如果学历和专业达到都会给你通知让去面试。不过这类岗位只是实习生,工作时长在3个月到6个月,会给你一定工资,都比较低。实习期满就结束实习工作。

如果想要留下来是比较难的,除非得到项目组的老大认可。这个认可不一定是认可你的技术能力,也可能是你的沟通能力,如果你人际关系做的不错,留下来还是可能的。

还一种就是职员了,但是也是需要从实习生开始做起,中间会有能力不达标的会被淘汰,不淘汰的话就抓做正式员工。

这类岗位基本都是打杂,而且还很多事情。基本上可以认为是被压榨劳动力的人。如果说能不能学到东西就看你个人了,进入后至少你会认识里面的各种岗位的人员,你去请教他们,都会很友好的给你解答各种问题,还有就是有很多资料可以看到。这个就看你勤奋与否了。

还有第三种,内推。

一般你在招聘网站上投递给BAT的简历99%是招聘部门看不到的。

而且现在BAT的人员根据统计60%的通过内推进入的。

可以通过找内部熟悉的朋友或者专门进行内推渠道的人进行岗位内推。不过很多专门做内推的公总号或者个人都是收费行为。会跟你的岗位薪资来定价。

即便是收费的内推也是先内推后收费。


如果上述所有的条件都不能进入BAT公司,那么最后还有一个方式,就是外包公司

BAT的外包公司很多,除了传统的软通、文思海辉、中软还有一些比较小的外包公司。

外包公司分为项目外包和人力外包。基本上做BAT外包的公司都是人力外包。

加入外包公司就相对简单很多。本科生就可以。

虽然很多人都说做外包天花板很低,这个要看你怎么认为了。如果是刚毕业的学生我建议可以通过外包公司进入BAT。也有很多在BAT外包公司干的不错的最后直接入职了BAT的,不过这些都是少数人。

特别是应届毕业生,通过外包公司加入BAT还是可以学到很多东西,他们的制度,管理方式、资料,人员等等,这些你都可以接触到。不过就是工作特别累,加班情况就不用多说。

我这里可以帮你内推BAT

研究生强答一波,阿里和腾讯都拿到了校招offer,除此之外也拿了百度头条网易滴滴亚马逊。我本科不是计算机专业的,所以主要也是在研究生两年多的时间里进行研发方向的学习,相信有很多经验和适用于本科生。

写在最前

我写过很多篇秋招总结,这篇文章应该是最后一篇总结,当然也是最完整,最详细的一篇总结。秋招是我人生中一段宝贵的经历,不仅是我研究生生涯交出的一份答卷,也是未来职业生涯的开端。仅以此文,献给自己,以及各位在求职路上的,或者是已经经历过校招的朋友们。不忘初心,方得始终。

前言

在下本是跨专业渣考研的985渣硕一枚,经历研究生两年的学习积累,有幸于2019秋季招聘中拿到几个公司的研发岗offer,包括百度,阿里,腾讯,今日头条,网易,华为等。

(在秋招末期,有幸又拿到了滴滴和亚马逊的offer,那时已经11月份了,所以之前的文章里都没有提到过)

如果你是Java方向的同学,那么我强烈推荐你关注公众号【Java技术江湖】本号致力于分享Java后端技术文章,分享我两年的Java学习心得,以及未来在阿里的点滴。关注公众号后回复“资料”即可领取3T免费学习资源(包括Java、C++、前端、移动端、算法、大数据等方向)

一路走来也遇到很多困难,也踩了很多坑,同时我自己也探索了很多的学习方法,总结了很多心得体会,并且,我对校园招聘也做了一些研究和相应的准备。在今年的秋季招聘结束以后,我也决定把这些东西全部都写成文字,做成专题,以便分享给更多未来将要参加校招的同学。


秋招前的积累与沉淀

研究生期间我有一件事情一直在坚持,那就是做笔记和写博客。

做笔记,就是记录学习中大大小小的事情,可能是面试问题,可能是一周的学习计划,也可能知识一个知识点,总归都是值得记录的东西,对我来说,就是一种积累。而对于博客,我从一开始只用于记录项目,到后来做转载,再到后来写原创,整理系列文章,则更像是一种沉淀。

但是在春招刚刚结束的这段时间,我发现一个问题,之前学过的东西忘记了很多,特别是那些理解的不够深的知识点,总是特别容易忘记。另外我发现,虽然我在笔记中记录了很多的知识点和面试题,但是往往我只看过一次,不会再去看第二次。

这也意味着,虽然记录的内容很多,但是真正消化吸收的内容很少,脑子里充斥着总是那些零碎的知识点和面试问题,对于完整的知识体系知之甚少。这些问题在春招期间也不断地暴露出来,让我思考了很久。

面对如此窘境,我想做出改变,趁着现在时间充裕,我想要为这些内容做一次减法,并且借此机会,推翻自己原有的知识体系,重建新的知识框架。简单说来,就是重新开始学习Java后端,这次我要用一种更高效的方式,避免走之前走的弯路,要用最高效,最合理的方式去复习。由于我之前已经有基础,所以我对完成这一目标有信心,相应地我也为此做出了明确且详细的学习计划。

我打算用几个关键词来形容这三个月的秋招复习。

“具体可靠的学习计划”

在三个月的时间里,我首先按照Java后端路线图安排好复习计划,每个知识点都会对应安排一段时间,比如我可能花一天时间复习“Java反射”,两天时间复习“设计模式”,一周的时间用于复习"JVM虚拟机”。我一般会在月初做好整个月的计划,然后根据进度做一些微调,但是基本上我都可以跟上进度,并且是在复习到位的前提下。

所以我觉得,对于秋招这一场苦战,指定计划尤为重要,一旦计划定下来,战略目标清晰,对应的战术制定也会变得清晰,执行力也会随之变强。

“写博客整合知识点”

至于复习方法,我主要通过看高质量博客,并且结合代码实践的方式巩固这部分知识点,比如今天学习“concurrenthashmap”,我会去找两三篇比较好的博客先看看,主要是源码解读方面的,然后我会把它们进行整合,如果有遗漏的知识点我会再进行补充,有时候我还会自己去看看JDK源码,以便更好地理解博客内容,完成知识整合之后,我就会对应地整理出一篇博客出来,发在我的个人博客上。

除此之外,当我完成了一整个专题的复习之后,我会把这些文章整理成一个专题,比如上面说的“concurrenthashmap”,实际上属于Java并发包,所以我会专门做一个博客专栏,用来完成Java并发系列的文章专题。对于每一个文章专题,我都会先理清这个专题一共有哪些内容,然后再开始整理。比如对于Java并发包,我会先写Java多线程基础的文章,再写JMM内存模型的文章,接着一步步着手写Java线程池,阻塞队列,工具类,原子类等等。这样一来这部分内容就复习完毕了,写系列文章的好处就在于,我可以从头到尾理清脉络,并且对于每一部分的知识点都做了比较好的总结。

对于博客的选择,我吸取了之前的教训,宁愿花半小时看一篇高质量文章,也不花10分钟看5篇烂文章。深度阅读的好处,就是可以让这部分内容更好地融入你脑内的知识体系,而不是像其他快餐文章一样转瞬即逝。

“做项目巩固实践能力”

由于之前在实习期间参加的项目都比较大,我接触的模块也比较单一,没有对整体项目有一个很好的把握,所以我决定趁这段时间再巩固一下我的项目实践能力,这里的能力主要是指的是对项目架构的把握能力,以及对业务开发的熟练度,当然也包括对各种常用后端技术的熟悉程度。

我花了大概一个月的时间完成了两个项目的开发,当然主要也是模精品两个开源项目做了,这两个项目都使用SpringBoot快速开发,并且用到一些常用的后端技术比如redis,云存储,以及一些常见Web框架,除此之外还涉及到了solr,爬虫等技术。虽然项目不算很难,但是我在这段时间里很快地熟悉了完整项目开发的流程,并且每天做迭代,通过Git来跟进版本,每个版本都会写清所做的内容,这也让我对项目的架构非常熟悉。

在项目之余,我也找一些常用的后端组件来跑一跑demo,以便让我对这些技术有一个直观的了解,比如面试常问的dubbo,zookeeper,消息队列等组件。这些尝试也让我在理解它们的原理时更加得心应手了。

“坚持刷题,注重方法”

算法题是秋招笔试面试中的重头戏,每个研发同学都免不了经历算法题的摧残,对我这么一个非科班同学来说,更是让人头大。正因为如此,我放弃了刷大量LeetCode题目的方法,选择了更加行之有效的刷题方式。

首先我重新刷了一遍剑指offer,并且对每道题目进行总结,尽量保证每一道题都可以记在脑子里,众所周知剑指offer中的题是面试时非常喜欢考的,所以先搞定这部分题目是最为关键的。

搞定剑指offer之后,当然还要刷LeetCode了,LeetCode题目这么多,怎么选择呢,我没有按照tag刷,也没有按照顺序刷,而是参考当时一个大佬的LeetCode刷题指南来进行刷题的,他把每个类型的题目都做了归纳,每部分只放一些比较经典的题目。所以我前后大概刷了100多道LeetCode的题目,并且在第二遍刷题复习的时候,我也对这些题目做了一份总结。

除了上面两个经典题库,我还着重刷了大厂的历年真题,这部分我主要是通过牛客网的历年真题题库来完成刷题的。说实话,真题是非常重要的,因为公司出的题目不像平时的那些算法题,可能会出得非常奇葩,所以你如果不提前适应的话会比较吃亏。完成这部分题目之后,我对算法题的复习也基本告一段落了。

当我完成所有内容的复习时,提前批已经开始了。终于要上战场了,因为战前准备比较充分,所以我对秋招还是比较乐观的,但事实上,秋招不仅是攻坚战,而且是持久战,要笑到最后,确实也不是那么容易的事情。

重建知识体系,对学过的东西做减法

前面提到我在秋招前完成了知识体系重建,那在这里我也想跟大家分享一下我当时大致的知识体系构成。就跟我前面说的一样,我选择重新再学一遍Java后端相关的技术内容,因为我知道大致的学习方向,并且有一定的基础,所以看很多文章变得更加得心应手,写文章和做总结也更加有底气了。

首先在Java基础方面,我写了20多篇原创博客,主要是对Java核心技术的解析,比如“Java反射”,“Java序列化和反序列化”,“Java异常体系”等等。

在Java集合类方面,我原创了部分文章,另外整合了一些比较好的技术文章,其中最主要的就是关于hashmap的文章,当时我整合的文章几乎没有遗漏任何一个知识点。

在Java并发编程方面,我主要参考了并发编程网以及一些优质博客的文章,先搞懂了Java并发原理,再一步步学习JUC并发包的组件,其中重点看了chm,并发工具类以及阻塞队列等JDK源码的解析文章,除此之外,我还会在IDE中跑JUC相关的emo,毕竟这方面的内容非常需要实践。

在Java网络编程方面,我先从最基础的socket入手,再讲到NIO,AIO,并且加入了几篇对Linux IO模型解析的文章,让整个知识体系更加完整(因为NIO是基于Linux Epoll实现的),接着我又加入了对Netty的探讨,以及Tomcat中对NIO的应用,可以说是把Java网络编程一些比较重要的部分都囊括进来了。为了更好理解这部分内容,我也在网上参考了很多客户端和服务端通信的demo,最后我分别用Socket,NIO,AIO以及Netty把C/S 通信的demo都写了一遍。

在JVM虚拟机方面,我则按照《深入理解JVM虚拟机》这本书的行文脉络进行文章的整理。在搞定JVM基本原理以后,我着重了解了JVM调优和实践中常遇到的问题,并且整理了常用的JVM调优工具,场景问题以及调优实践的案例,这也是因为面试中对JVM调优实践越来越重视了。

在JavaWeb方面,我从Java Web相关技术的发展入手,一步步了解了每种技术存在的意义,比如JSP,Servlet,JDBC,Spring等等,然后对每种技术进行了比较全面的了解,并且着重地看了Spring和SpringMVC的源码分析文章,另外一方面,我花了很多时间去研究Tomcat的工作原理。除此之外,JavaWeb项目中常用的maven,日志组件,甚至是单测试组件,也纳入了我的系列文章里。

在数据库和缓存方面,我主要学习了MySQL和Redis这两种最常用的数据库。对于Mysql,我从简单的sql开始了解,然后开始了解sql优化,MySQL的存储引擎和索引,事务及锁,还有更复杂的主从复制,分库分表等内容。对于Redis,我也是从简单的api入手,然后去了解每一种数据结构的底层实现原理,接着尝试去学习Redis的持久化方式,以及作为缓存常需要考虑的技术点,当然,也包括Redis的分布式锁实现,以及它的分布式集群方案。

最后一部分就是分布式相关的理论和技术了,这个也是困扰我很久的一块内容,我主要把这块内容分为两个部分,分别是分布式理论和分布式技术,理论方面,我先了解CAP,BASE等基本知识,然后开始学习一致性协议和算法,接着探讨分布式事务。对于分布式技术,涉及的东西就更多了,例如分布式session,负载均衡,分布式锁等内容,这些知识点我都会用一到两篇文章去总结,对于分布式缓存,消息队列,以及分布式服务等内容,我会花比较多的时间去全面学习,然后总结出一个系列的文章出来。当然,对于这些技术的学习主要还是停留在理论方面,在自己的项目中能用到的比较少。

至此,我的知识体系基本构建完成,这也是我在秋招中能够成功闯过那么多面试的原因。

秋招之路,砥砺前行

不管前期做了多少准备,到秋招的时候也不能掉以轻心,从七月底第一次面试到9月基本佛系,中间经历了大大小小的面试。

在完成知识体系重建以后,我把重点转向了另外几件事,一是完善和熟悉我的简历,以便在面试中能够比较好地发挥,二是持续刷题,保持对算法题和笔试真题的手感和熟练度,三则是看面经查缺补漏,我一直认为看面经是很重要的一项复习内容。

就这样,我一边继续复习,以便开始了一场接一场的面试接力。

起初,我面了几家小公司练手,接着阿里的提前批接踵而至,我战战兢兢地参加了阿里中间件部门的面试,面难难度还算适中,一共四轮面试,当时我的表现也还不错,问题基本都答上来了。面完不到一周以后我就收到了通过的消息,当时还有点懵。没想到第一个offer这么快就来了。

这段时间内,蚂蚁金服的两个部门也给了我面试机会,我都参加了它们的面试,并且顺利地拿到了其中一个部门的offer。由于我对蚂蚁这边的业务比较感兴趣,最终选择了蚂蚁金服的offer。

阿里提前批的胜利确实是意外之喜,但也大大地鼓舞了我,于是我又参加了百度和腾讯的提前批面试,由于百度的提前批不走流程,一共有四个部门面试了我,每个部门都有2到3轮面试,总计约为12次面试,到后来我已经快晕了,看到百度的电话就害怕,由于面试次数太多,有时候发挥确实也不是很好,我也没有特别在意,只当是在锻炼自己了。

百度的面试难度每个部门不一样,但是每次面试必写算法题,一写算法题,时间至少就是一个小时以上,每次面试完都有一种身体被掏空的感觉。

经历了百度面试的摧残以后,我手写算法的速度也变快了,很多坑也被我填上了。接下来面对腾讯的面试,我也是既激动又担心,腾讯的面试难度比较大,对于操作系统和网络的知识喜欢深挖,问的东西也很有深度,面完前三面以后,第四面拖了3周才进行。当时三面面试官对我的评价比较好,也让我信心爆棚了好久。

在等待腾讯终面的期间,我参加了今日头条的面试,当时有幸拿到了一个白金码,免去笔试,事实证明白金码作用真的很大。头条的面试难度和腾讯差不多,三轮面试,同样需要写各种算法,由于是视频面试,我可以清楚地看到,头条的面试官真的非常高冷啊。面完头条我的第一感觉就是应该挂了吧。没想到最后还是给了offer。

结束这几家大厂的面试之后,我觉得我的秋招已经接近尾声了,不过由于之前投的比较多,所以我又面了几家大公司,如网易,华为,快手等。到9月上旬的时候,我接连收到了bat和头条,网易的意向书,阿里最早,腾讯最晚,每收到一封意向书我都很开心,没想到最后我真的可以集齐bat等大厂的offer。

9月以后,除了偶尔和同学做几场大厂的笔试,我基本就佛系了。直到后来一些外企例如亚马逊,大摩开始笔试面试,我才又重新回到了状态。

截止目前,我基本上把该拒绝的offer都拒绝了,综合各方面因素的考虑,最后应该会签阿里,原因是部门是我自己喜欢的,同时给的评级也比较高。虽然腾讯也给了sp,但是最后还是忍痛割爱啦。至于百度和头条,给的offer并不是很令人满意,所以就没有考虑了。

至此,我的秋招之旅总算圆满结束。

面经分享

微信公众号【Java技术江湖】一位阿里 Java 工程师的技术小站,作者黄小斜(关注公众号后回复”Java“即可领取 Java基础、进阶、项目和架构师等免费学习资料,更有数据库、分布式、微服务等热门技术学习视频,内容丰富,兼顾原理和实践,另外也将赠送作者原创的Java学习指南、Java程序员面试指南等干货资源)


1 阿里面经

阿里中间件研发面经

蚂蚁金服研发面经

岗位是研发工程师,直接找蚂蚁金服的大佬进行内推。

我参与了阿里巴巴中间件部门的提前批面试,一共经历了四次面试,拿到了口头offer。

然后我也参加了蚂蚁金服中间件部门的面试,经历了三次面试,但是没有走流程,所以面试中止了。

最后我走的是蚂蚁金服财富事业群的流程,经历了四次面试,包括一次交叉面,最终拿到了蚂蚁金服的意向书,评级为A。

阿里的面试体验还是比较好的,至少不要求手写算法,但是非常注重Java基础,中间件部门还会特别安排Java基础笔试。


2 腾讯面经

腾讯研发面经

岗位是后台开发工程师,我没有选择意向事业群。

SNG的部门捞了我的简历,开始了面试,他们的技术栈主要是Java,所以比较有的聊。

一共经历了四次技术面试和一次HR面试,目前正在等待结果。

腾讯的面试一如既往地注重考查网络和操作系统,并且喜欢问Linux底层的一些知识,在这方面我还是有很多不足的。


3 百度面经

百度研发面经

百度研发面经整合版

岗位是研发工程师岗位,部门包括百度智能云的三个分部门以及大搜索部门。

百度的提前批面试不走流程,所以可以同时面试好多个部门,所以我参加百度面试的次数大概有12次左右,最终应该是拿了两个部门的offer。

百度的面试风格非常统一,每次面试基本都要到电脑上写算法,所以那段时间写算法写的头皮发麻。


4 网易面经

网易研发面经

面试部门是网易云音乐,岗位是Java开发工程师。

网易是唯一一家我去外地面试的公司,也是我最早去实习的老东家。

一共三轮面试,耗时一个下午。

网易的面试比我想象中的要难,面试官会问的问题都比较深,并且会让你写一些结合实践的代码。


5 头条面经

今日头条研发面经

岗位是后台研发工程师,地点选择了上海。

我参加的是字节跳动的内推面试,当时找了一个牛友要到了白金码,再次感谢这位头条大佬。

然后就开始了一下午的视频面试,一共三轮技术面试,每一轮都要写代码,问问题的风格有点像腾讯,也喜欢问一些底层知识,让我有点懵逼。


敲黑板!!!下面是赠送给学习和求职路上小伙伴们的福利资源!!!

精心整理了3T的技术学习资源,都是技术学习和求职路上非常有用的资料,欢迎领取!希望对你有用。

只要扫下方二维码关注微信公众号【黄小斜】后回复“资料”以下所有的资料统统免费送,我收集整理花了好几天的时间,另外有一些资源是我花钱买的,总之是花费了不少的精力,才有了下面的成果,方便的帮转发宣传一下就当是感谢我了(资料都免费送,转发宣传看大家自愿)。

http://weixin.qq.com/r/fimstL3E7uCRrfnX93xs (二维码自动识别)

免费送

以下是我精心整理并分好类的3T资源。由于资料太大,所以建议大家添加我的个人微信(关注公众号后可以加我微信),链接失效了也好及时告诉我。

以下为资源部分截图

1.Java全套课程(包含基础,进阶,求职等多个系列)

2.前端系列课程

3.大数据系列课程

4.Python全栈与机器学习

5、C++学习视频资源

6.Android学习视频资源

7.算法视频课程

8.名校计算机基础视频课程

9.程序员笔试面试视频课程

10.MySql视频课程

除此之外,还将赠送我原创的求职面试大礼包

1、GitChat:BAT+程序员面试指南

2、小专栏

3、原创求职面试资料合集

关注微信公众号【黄小斜】后回复“资料”二字,以上内容即可免费领取

http://weixin.qq.com/r/fimstL3E7uCRrfnX93xs (二维码自动识别)

如果你想感谢我

平时多关注一下公众号发的文章,没事打开看看。也可以在知乎关注我哈。

如果想和我更多地交流,可以到公众号里加入我们的知识星球,知乎平时可能没时间回私信。

资料都是免费送的,没有转发、集赞等套路,你也不用给我发红包感谢我,不要钱哒~

后记

秋招结束以后,我就把主要精力花在做这个公众号上了。当然,剩下要处理的事情还有很多,毕业论文,毕业旅行,还有工作前的知识储备等等。果然,人的一生需要不断的修行,刚刚闯过了一关又马上要迎接下一轮挑战,你不能停下脚步,毕竟大家都在往前走。

希望还在求职路上的各位少侠好好加油,在未来也能够顺利地拿到自己想要的offer!

微信公众号【黄小斜】作者是蚂蚁金服 JAVA 工程师,专注于 JAVA 后端技术栈:SpringBoot、SSM全家桶、MySQL、分布式、中间件、微服务,同时也懂点投资理财,坚持学习和写作,相信终身学习的力量!关注公众号【黄小斜】回复「Java」、「Python」、「C++」、「大数据」、「算法」、「AI」、「Android」、「前端」、「iOS」、「BAT」、「校招」、「笔试」、「面试」、「计算机基础」、「LeetCode」 等关键字可以获取对应的免费学习资料。

正儿八经的本科生,16年毕业,一年经验社招BAT,拿senior title,应该有资格回答这个问题了吧?

装逼完毕,好好答题。

首先是学历

想要本科生就能进入BAT,你需要一个不错的母校,不需要清华北大,但至少211。事实上根据我的观察,我认识的本科就进入阿里的,除了几个邮电的,几乎清一色的985,而且都还是不错的985……

当然对于BAT来说,学历并不是最重要的,也不是硬性规定。但是有了学历,至少可以保证你的简历不会在hr环节就挂掉,而且可以让面试官在评判的时候更加的慎重。当然,不依靠学历也可以做到这两点,但必须肯定的是,依靠学历是最简单的一种。

牛X的经验

在这里,我把项目经验和竞赛经历做了一个合并,一起来讲。

不管是竞赛也好,还是项目也好,目的只有一个,就是足够牛叉。

有没有想过,本科生为什么比研究生吃亏?是因为少了三年吗?其实三年的时间不是最主要的,主要的是这三年的时间里,研究生们有足够的时间系统地成长。厉害的硕士的科研、项目、比赛都是相关的,串成一条线。比如我组里的一个哥们, 之前是做知识图谱的。科研项目、自己的项目经验、参加的比赛和获奖经历都是知识图谱相关的。这三者叠加起来就非常恐怖,一旦对口,可以产生难以置信的效果。

而本科生呢?没有充足的意识,一般很少会有明显的特长,简历上的项目东一榔头西一棒,这里一个web管理系统,那边一个C++的小游戏。彼此之间毫无关联,更不用说当做组合技施展了。

所以,想要征服面试官,你需要一套牛叉的经验。由于我们时间经历有限,也没有足够的资源,这就要求我们必须有所取舍。也就是说你不能什么都想做,也不能什么都做,更不能乱堆砌一通“辣鸡项目”凑数。必须找到一个比较固定的技术领域,让面试官知道,你在这个领域当中足够强。

打个比方,我当年打了acm,花了很多时间拿了一个还可以的奖。后来觉得自己缺少项目经验,又去学了Java,做了点web项目。当时觉得自己很棒,碾压很多研究生。但现在想起来,如果现在的我是面试官,我可能觉得那时候的我还不错,既有算法基础,也会做项目。但是也仅仅是不错,距离非常出色还差得很远。原因也很简单,因为这两点没有相关性,全靠单打独斗。如果面试官不懂acm的话,整体的含金量会大打折扣。

如果给我再来一次的机会,我不会去做什么web项目,而是会去学点机器学习,做个网页搜索引擎或者是AI智能识别这种项目。虽然这类项目网上也很多,含金量并不一定非常大。但它可以把我acm算法相关的特长也串联起来,给面试官一个很强的冲击,让他确信,我是一个在算法方面很有实力的人。

面试准备

接下来就是面试准备了,必须要承认的一点,面试不是会吹牛就行,面试是一个技术活。

关于这一块如果展开来说太多了,这方面我曾经写过一个专栏,大家感兴趣可以私信我。我简单说几点,首先是你的简历。简历不是写提纲,罗列一下做过些什么,会什么技能而已。简历要做的是凸显亮点,做到能第一眼让面试官眼前一亮。

那么怎么才能做到这点呢?

简单来说可以归纳成几个原则:简洁不简单、突出不卖弄、可靠且真实

这三点说起来很简单,但是做到非常不容易。需要有大量的思考,伴随深刻的理解,以及对简历多次的修改。这些都是本科生很难做到的。

简历如此,面试也是同样。在面试的过程当中也有很多讲究,怎么介绍自己,介绍自己做的项目?怎么突出自己的长处,并且征服面试官?怎么回避自己不那么擅长的问题?如果一个问题实在不知道,怎么委婉地表达?又怎么在每一次的面试当中获得成长?

BAT的面试官们不止一次的和我说过,在招聘的时候,他们不是要候选人什么都会。而是想要有亮点,足够服众的亮点。能理解这句话,进bat的难度降低至少一半。

会点技巧

最后讲点技巧层面的操作,其实也是和面试相关。

除了准备面试经常会问到的问题的答案之外,很多人会专门为面试准备杀招。举个例子,比如面后端的,在面试前特意看一些行业内经典的技术架构,翻一翻源码,吃透细节。特意在简历里写上熟悉某某相关的技术,留作一个钩子。当面试官问到相关问题的时候,把事先准备的案例作为例子信手拈来。

面算法的时候,可以着重复习一些比较经典的模型的原理以及公式的推到。当面试官问你某某模型的实现原理的时候,你随意摊开白纸,拿起笔说,“光说不清楚,我给你推倒一下公式吧。”接着行云流水,在纸上一通演算。

想想看这一通操作下来,面试官会是什么反应?你又会是什么结果?

达标的技术能力,加上充足的准备和合理的技巧,即使不是研究生又有什么关系呢?

如果是前端移动软件工程师的话,需要掌握地层以及数据结构等一些知识。

比如

1、数据结构和算法。比如去头条的话 可能让你手写数字

2、第三方框架及其源码的解析

3、framework等流程

4、性能优化

5、ndk、FFmpeg音视频的界面等

6、android架构,组件化,插件化,及其mvpMVVM等

要想进大厂,这些是必须要掌握的。

很多小伙伴们问过好多次,Android还能活多久?这个真的不好说,但至少在五年以内,Android还是不灭的。Android 历程10年有余了,已经积累了太多的技术,知识点,技巧,思路,这些前人都会了,并且正在创造新的思路出来,对于广大的底层 coder 来说,仅仅是追赶就很难了,更别提去自己创造了,但是现实时我们尝尝学习了很多开源框架,落到实处就是仅仅会用而已,不说源码看没看过,甚至原理都不知道,不知道作者用什么技术实现的,这点就是广大 coder 的现状,没有成长。只做业务的小厂也同样如此!

同样,我们在专研一门技术的同时,也要多方面去发展,我想大家都有去思考过这个问题。多去了解其他语言,可能是公司需要,也可能是个人对技术的渴求。尤其是在面试中,很多公司要求会第二门语言。so,我们不得不去学习和了解。现实是需要我们去牢固技术,拓展只是面的,20K的工作其实是比较容易的,如果在想突破,那就需要对技术更加深入的了解,包括原理,底层以及你的解决问题等各方面的能力。

所以我们每个人都要去改变。这个改变如何有效率的去改变呢?而不是盲目的去做,这个是需要方法和指导的。 如果你这样放纵自己,那么你看到别人在进阶技术就会有这样一种想法:求求你们别学了,我快跟不上了!

由于终端研发部免费的圈子里有好多打广告的,群几乎成了打广告的水群,目前个人是以android方向为主,已经扩展后台语言Java/go方向,小程序,前端网页开发,为了更直接更有效率的帮助到大家,所以创建了一个这样的一个知识圈子。

so,接下来我会分享那些内容?

  • 1Android方面:OKhttp,Retrofit,eventbus,Glide,eventbus,Rxjava,blockcanary,mvvp,dagger2等几大框架的源码解析及其封装使用技巧
  • 2、插件化/模块化等,flutter/Dart的开发流程
  • 3、分享Jni/NDK的编程及其工作中相关的问题,大家都知道我之前写过ndk方向的8篇博文,目前已经不能满足工作中的需要了
  • 3、同时我也会分享一些常见的android面试题,Lru算法,Binder机制,EventBus实现原理和为什么不能跨进程,Handler如何在handleMessage方法拦截之前发出的message,跨进程几种方式,AIDL,handler机制,ThreadLocal实现原理
  • 4、常见的数据结构和算法,hashmap,二叉树,红黑树等
  • 5、SpringMvc/Springboot、go语言的使用技巧等
  • 6、 当然你也可以向我提问,里面已经驻扎了一些业界大佬,励志于做一个高效技术交流圈。

终端研发部是一个以技术为主的学习交流技术号,谈的是技术,是产品,更是我们的人生。做东半球最会思考,最有味道的互联网开发者

对这个问题我一直很想说点什么,之前的高赞回答已经说了很多自己的经历,我想从另一个角度来回答这个问题。我每年都会作为面试官参加校园招聘,我来说说作为面试官,我喜欢怎样的学生,给将来想要进BAT的同学一些参考。我也非常希望以后能招聘到更多优秀的学生,所以特别想说说我自己的看法。

对于校招,我自己总结出来的招聘原则是选拔“基础好、有潜力”的毕业生。何为基础好呢?就是书本上各种知识都扎实,具体哪些知识,其它高赞回答都很清楚了,这里不说了。

那何为有潜力呢?在我看来无非就是这两点:

1、学历优势:清北浙交等等,这些都是学霸型,学习能力在高考就已经验证过了,可以认为是非常有潜力的;

2、勤奋:勤奋的人最有潜力。编程其实是个技术活,持续学习、多动手,就能一会保持竞争力。工作多年我也发现能战胜惰性的人最终能走得很远。

第一点其实可遇不可求,这几个学校每年毕业的计算机相关专业找工作的本科生本来就特别少,远远小于BAT每年的校招人数 ,所以对于其他同学来说,他们也构不成竞争。对于大部分人来说,关键还是第二点:勤奋。

那面试官如何看出一个人是否勤奋呢?我主要是看平时积累,有没有github、博客之类的。面试的时间非常短一般就一个小时以内,面试官可以得到的信息有限。但是如果有git/博客,面试官就可以提前浏览一下,更全面地了解应聘者的能力。假设通过招聘需要60分,有些人的博客/github就已经得了好几十分了,甚至超过60分的也有。

我来举几个例子,像这样的人参加校招肯定是有极大优势的:

学习stl并自己尝试实现,将代码放在github上

同样是写leetcode的学习笔记,看看这个

《UNIX环境高级编程》读书笔记

这样的例子其实还有很多,我不多列举了。本科生如何进BAT,在我看来,用两个字来描述就是"勤奋",用一句话来说就是“坚持学习,让学习变成一种习惯;多总结,总结本身可以整理思路加强学习效果,也可以向招聘方展示自己的能力”。

我当初来鹅厂面试之前是在一年以内把《unix网络编程》第二卷上面的每个例子都敲下来运行了一遍。我也自认为还算勤奋,但是招聘的时候还是会偶尔碰到一些同学,他们的学习态度让我自愧不如,给了我很多启示。遇到这样的人的时候感觉就像捡到宝一样。

做面试官很多年了,看过的简历几千份应该有了。同时作为面试者,也面试了很多公司。如果你想进入一线大企业,那么可以看看我的经验介绍。

作为面试者,你应该:

  1. 和时间做朋友: 你现在已经在一家不错的公司了,领导nice, 同事相互帮忙,福利薪资都可以。那么是不是说现在可以放松心情了? 绝对不能。花无百日红,谁知道3年以后这公司会怎样,3年后产品是不是就没了? 要在平时的工作中积攒好的简历背景。比如你是做后台开发的,用的Java语言,那么我是不是可以学学前端开发? 我是不是应该看更多的技术书? 我是不是应该和架构师探讨下架构经验? 我的工作有点创新,能不能发专利? 组里缺个Scrum Master,我能不能自告奋勇的当一下? 所有你额外承担的活都可以给你的简历增加色彩。
  2. 你已经决定要面试了,是否换方向很重要。如果你是后台开发,现在想转机器学习。那么你要做好: 可能不会增加薪资,可能会从大厂跳到小厂,可能会从team leader 到普通IC的 心理准备。你的下家老板不傻,对于新方向而言,你是一个新人,我需要承担一定的风险。
  3. 不要海投简历,仔细分析公司和职位信息,找到你中意的几家。有的放矢的投。每一个职位写一份简历。因为简历是一个很主观的东西,把你过去的匹配的经验挑选出来,着重写一下。这样机会会增加很多。
  4. 对于算法/工程职位,刷题是必须的。越是好的公司,越需要面试算法题目。有的公司连PM都要面试算法题目。
  5. 面试的时候积极主动,同时也是你了解这个公司的一个好机会。

作为面试官, 我看的是:

  1. 如果是应届生,学历学校是很重要的参考因素。同时会看一看你的实习或者项目经验。面试主要考察算法。
  2. 如果是三年以内的求职者,会参考学校学历背景以及上一份公司的名气。会看你在改公司做的方向。考察算法和你的项目。
  3. 如果是10年以内的求职者,会看你的项目经验,公司,升迁速度等等因素。同时结合算法,工程的一些知识。
  4. 如果是10年以上的求职者,主要看你做的方向。是否有行业深度以及取得的成绩。

现在就业形势确实不好,这是我的回答,互联网就业形势有多差。但是希望大家都能找到满意的工作。

责任编辑:
热门阅读排行
© 16货源网 1064879863