大学生涯中第一次笔试面试都交给了CVTE,结果虽然是凉凉,但是很有意义,在此记录总结一下。
在线笔试:
在线笔试是在CVTE的官网进行的(非牛客),全程录像,选择16道题左右。 编程题两道。
选择题ES6相关的知识点占了很大一部分, 例如箭头函数,变量的解构赋值等
剩下的都是 JS 相关的知识居多,闭包等... 忘了差不多了,没考操作系统,数据库啥的,都是与前端相关的内容
编程题一共有两道,一道是嵌套数组转换(递归解决,把嵌套数组转换成普通数组),另外一道是求前 n 项的素数。
做完后感觉题目还行,但是没什么把握选对或者能AC,选择题(选择题一题做完后不能回退)编程(不能使用本地IDE,一气呵成)都只有一次提交的机会。
在线面试:
幸运的是笔试通过了,笔试后3天左右的时间面试官打来电话约定在线面试的时间,在线面试使用牛客网的判题系统和在线视频系统。
面试前很紧张,毕竟是第一次.
面试的时候面试官基本是以下这个套路:
1. 自我介绍 30 秒 ( 请事先准备一段自我介绍 )
2. 说说你的项目,面试官会抓住你项目中的一个点,不停地往下问,以此来了解你技术的深度,以及学到了什么程度
3. 知道原型链吗?说一下JS原型链?(讲的很混乱,什么构造函数、原型对象、实例对象)
4. HTTP 状态码全部都说一下?304 状态码? ETAG是什么?ETAG如何生成的?
5. Soket.io 了解吗?具体是怎么回事?
6. 编程,回文串
7.面试官:你觉得你还有什么特点是刚才我没问到的(PS: 你展现的能力我并不满意,有没有其他的技术特长)
失败总结:
可以看到 CVTE 对实习生的要求并不高,编程题也不难,我事先准备的问答题也都用上了,但是终究失败的原因我认为有以下几点:
1. 面试官问的问题网络上都可以找到,但是你并没有真正地参透它,只是把别人的答案复述了一遍.。面试官是可以分辨你是临时抱佛脚记的答案还是真正地理解了的。对于这些概念性问题一定要理解透,不能一知半解,描述的思路一定要清晰。
2.项目准备不充分,根本不值得推敲,项目没有技术难度,没有深度,对自己的项目一定要了如指掌,分析面试官可能问到的任何一个地方
3.写编程题之前与面试官需要进行充分的沟通,输入是什么(字母大小写?是否包含数字?空字符是否处理?空格包含在内吗?),输出是什么,题目有什么问题,有什么限制,需要完全的搞懂题目,不能一开到题目就开始敲代码,面试官还注重考核细节,这道题是否用js内置的api可以做? 我拿到题目就闷头开始敲代码,这是失败的根本原因。
最后:
失败的面试自然会有打击的,但收获的是宝贵的经验,对复杂的难的知识点一定要理解透彻,对相关引申出的问题也要有所准备。 面试官问问题的时候可以不要急于回答,可以在思考后整理思路在回答。对自己做过的项目可以继续深挖,不要只停留在项目的基础。对自己的优势要有了解,面试的时候可以引导面试官往自己擅长的地方去询问。最终的根本还源于技术,只要技术够牛逼,知识够扎实,就可以面对一切面试。