求职总结
校招求职经历的一些记录和心得,以及对自己学习方式的概括。
1.复习
时间:系统地复习的时间大概要至少在招聘季前一到两个月,平时也要注重积累项目中的难点以及知识点。
方式:
-
看书:
(1) 《JavaScript高级教程》、《犀牛书》主要讲解JavaScript基础。
(2) 《你不知道的JavaScript》是对JavaScript的进阶总结与理解,主要看上卷和中卷。
(3) 《CSS权威指南》对CSS的各个属性、选择器、单位等等有系统地了解。
(4) 《CSS世界》是对CSS的进阶经验总结与理解,对于CSS比较薄弱的人比较难以理解,可以先大概理解。
(5) 《ES6标准入门》是阮一峰写的对ES6的总结,有网页白嫖版本,建议看书。主要是重点在对象的扩展和新的语法,面试问的最多的是新API、箭头函数和Proxy、Generator、Promise、异步函数等等。
-
文档:
(1) Vue全家桶的官方文档一定要翻来覆去地看,如果使用的技术栈是React也是一样,对生命周期的理解、对双向绑定的实现、虚拟DOM的实现,以及现在的框架的相似点相同点等等知识点要有深入的了解。
(2) 知道前端相关的架构模式,如MVC(如Angular)、MVVM(如Vue)、Flux(Vuex,Redux)等等。
(3) 建议在MDN中学习WebAPI、Http(也可以在书籍中系统地学习)、Fetch、RequestAnimationFrame(面试写动画请一定用这个或者CSS3,理解和setTimeout、setInterval的差异)、对象的各个方法使用(特别是数组)等相关知识要有一定的了解。
(4) 除此之外还需要自己学习新的东西,比如TypeScript、Webpack、nodeJS等等知识。
(5) 还需要从各种博客文档中获取很多知识,比如微任务宏任务、防抖(立即执行版本与非立即执行版本)与节流(时间戳与定时器版本)、Diff算法、输入一个URL按下回车后发生了哪些事情、JS执行机制、浏览器渲染机制、重绘与回流、CSS布局等等很多在面经中看到的问题。
-
刷题
(1) 题型:笔试主要是选择题(单选多选)、编程题(考算法或者JS操作DOM)、问答题,偶尔有填空题。
(2) 方式:选择题要做真题和牛客的练习题,编程题做真题和LeetCode,A了的也要去英文社区看其他大佬的更好的解法,面试遇到原题可以装逼,哈哈哈哈哈哈。
-
面经
牛客上一大堆,没弄懂的一定要弄懂。
2.投简历
前后投了差不多有五六十家,只有大概三分之一有笔试,反正多投就对了,不过要注意笔试是否会冲突。有现场招聘的宣讲会能去就去。
往水里扔石头还会冒个泡,很多公司投了连封感谢信都没有,挺扎心的,小米更是在耍猴。
3.笔试
疯狂做就对了,算法好就是强,前面刷的LeetCode会派上大用场(好多公司直接从上面抄题),选择题要总结,重复几率较大。
4.面试
一面:有种东西叫“简历面”,阿里就搞这个,问你些项目,你以为答得很好,其实面完都不理你了。其他公司一面很多都问基础、性能、网络安全或者框架或者搞个编程题马上做出来,比如头条、CVTE、顺丰(就我面试过的而言)等等。
还有一些问场景题,比如老板手机访问页面白屏,但是测试人员无法复现,问你怎么解决(这类问题考察知识面的广度,以及解决问题的思路方法,也可以直接叫老板换个手机/滑稽),再比如现在某个服务器上有两个10G的文本文件,里面只有一个字符不一样,现在需要你接收者两个文件并找到那个不一样的字符(比如说你可以从网络的角度,算法的角度等等来回答),也有奇葩的,和你搞个前端的JSONP工具包什么的。
二面:有的面算法(如头条、CVTE),同时有些还是要问基础,或者其他的一些技术(框架、WebAPI、CSS等等),很难说。
...n面:有的公司有好几轮面试(如阿里、百度)。
hr面:这一面其实挺重要的,考察点有好几个
(1) 语言组织,表达能力。
(2) 家庭情况,包括家人对你的支持程度,有没有女朋友(会问你女朋友对你支持情况,要求什么的)等等,我直接没有,然后就很扎心。
(3) 通过问一些问题来考察你的价值观,问你优缺点以及为什么等等。
(4) 谈薪资待遇,有的公司是不和你谈,直接说给多少。
(5) 问你有没有其他offer,挺微妙的一个问题。
(4) 还有些送命题,主要是CVTE的hr真的是很强啊,hr都还这么能挂人,具体就不说了,随机应变吧。
5.个人总结
这一段主要总结自己吧,没啥文采,废话挺多。
我应该算是实验室里复习得比较早的一批了,平时也有积累,虽然不多,但是有点总是好的。项目经验也还可以,简历做得还能看,最后结果还算满意吧。
找工作最难熬的阶段是九月上中旬,看着自己的简历投出去没消息,笔试能做的都做得差不多了,心里也挺焦虑。但是到了九月下旬开始有面试了。
CVTE一二面在一个三四星级的酒店,对同学们也是挺好的,去了给我们准备会议室等待,到中午了买了很多汉堡给我们吃,还有喝的,算是良心了。
一面是个小姐姐,对我很好问了些JS基础、网络安全、CSS布局、兼容性等等基础问题、写一个添加了一些功能的防抖、写一个发布者订阅者模式等等问题,总体时间在35分钟左右。二面是个大叔,看着很干练,年轻的时候应该挺帅,先问我平时怎么学习的,我说到刷LeetCode他就很惊讶的样子,说道,那我们来做两到编程题吧(其实他应该早就准备好了的吧)。第一道编程题限制了时间复杂度为O(n),五分钟写了一个解法,说了另一个解法和时间复杂度,他很开心的鸭子。第二道题是实现一个bind函数,先粗略地实现了,然后加了点要求,继续实现了,再加要求,就没啥思路了。他说没啥,就聊些其他的,职业规划和项目相关的问题。总体时间在30分钟不到。
CVTE的hr面是在视源在重庆的一个招待处,里面是视源的商品的展示区域,还有些会议室等等,hr小姐姐给我的感觉是人很聪明,至少情商比我不知道高到哪里去了。hr面是一个hr对四个不同技术岗位的人,一个问题四个人轮流回答,在回答后hr会对每个人单独提问。左边的两个兄弟,一个过度紧张,一个说话前后逻辑冲突说话还不看人,被hr直接怼了,后来他两应该是直接凉了,去参观的时候没看到他两了。总时间是一个小时二十分钟左右。
顺丰一面的大叔一听就是广东人,问了些框架和基础,答得还可以。然后问我要我来设计Vue要分为哪几部分,这个问题没仔细想过,当时少答了一个,不过问题不大,总时间是四十分钟。二面感觉也没问多深的,问了些Ajax、Http、JS运行机制等等(记不清了),总时间是三十分钟。
顺丰的hr面是在沙坪坝的一个饭店里,等待区就在一个会议室门口,门口对着过道转角,就在拐角摆了两排凳子,客房客人开门把我们盯着。。问的问题都差不多,没啥特别的,hr主要是考察三观吧,面了接近半个小时。
记得在面完视源的一二面后,出酒店发现下着大雨,没伞,在雨中奔跑着去地铁站,那记忆太深刻了,赶回寝室面顺丰二面,约的五点,结果迟到半个小时还没来,给hr发邮件说了后hr让我等着,快到六点的时候终于来了,佛了。还面了个锐明,去公司现场面,三轮面试总共花了六个多小时,最后和hr谈不拢薪资,就没了。
希望看到我这篇文章的pong友都能找到自己满意的工作,有兴趣也可以和我这菜鸡交流前端或者算法,共勉!