myblog
myblog copied to clipboard
最新腾讯和阿里前端社招面试心得2018年8月
近期由于公司业务调整,在加上个人考虑成家立业,于是有了换工作的打算。本人工作六年,目前在一家外企工作,前端Leader。至于技术能力如何,大家可以看看我的博客和Github:
- 我的博客 https://github.com/lihongxun945/myblog
- 我的github主页 https://github.com/lihongxun945
月初投了三家公司,分别是阿里、腾讯和拼多多,全部通过面试并进入Offer流程。这里不谈关于公司选择的问题,这个见仁见智,我面的三个岗位分别在杭州,深圳和上海。大家比较关心面试的流程和题目,在不泄露面试题的前提下,说一下这三家的面试心得。
腾讯
腾讯是我最早投也最快面试的,周一的晚上我在腾讯的同学帮内推了简历,周二中午就电话面了。因为确实没有想到会这么快,本来还想接下来两天准备下常见的电话面试题,结果没准备就进行了第一次电面,一个小时后应该是前端老大进行了第二轮电话面试。这两轮面试算是裸面了,不过大部分问题回答的都还OK,相信任何没有准备的工程师对一些网络协议和加密的细节都不会答得完全正确。
一面和二面,技术面
前两轮电话面试应该都是T3.x级别的高级工程师,主要问题集中在网络协议、Vue的实现原理、跨域和网络安全、Vue和React的比较,这几个部分。由于网络协议相关的部分在工作中不常用,加上没有准备,所以回答的不是特别好,不过好在这一块我的功底还是比较好的,没有出现大的问题。
作业
第二天给我了一个作业题,要求完成两个组件,这里不透漏是什么组件。花了大约7个小时完成了,第二天下午交给面试官。然后面试官找出了一些问题,于是继续改,继续找出问题。。。持续到周末结束。到周末是我主动要求结束的,因为其中有问题的那个组件其实是一个非常复杂的组件,绝对不是花一天就能做的完美的。考虑到从写出来到修改了两次bug,已经足够证明能力了,所以我主动提出结束这个作业,不然会太耗费时间,面试官答应了。
三面和四面,技术面
下周一的快下班的时候接到了电话,技术三面,仍然是第二个面试官,要在进行一次电话面,由于我当时正在从杭州赶回上来的路上(阿里面试回来),所以推迟到了晚上八点。面试内容依然是技术,和前两次的主要方向差不多。结束了之后立刻有一个感觉是大老板的人打电话进行了面试,四面,问了一些工作经历和个人规划相关的问题,还问了高考高了多少分(汗- -!),大概15分钟左右就结束了。
第五面,视频面试
结果就坑了,一个星期没人联系我,到周五的时候拜托同学帮我问了下HR。再到下个周一(第一面是上上周二),终于联系我,立刻安排了当天下午的通道面试,第五面。所谓通道面试,其实是腾讯有一个技术委员会,层级在 T3
及以上的都需要通过这个技术委员会的面试,腾讯内部晋升到 T3
开始也都需要技术委员会答辩通过。通道面试问的问题相关广,从Vue原理到Node都有涉及,而且速度飞快,半个小时就结束了。总体感觉回答的不是特别好,主要是有一个JS的题我回过头来想其实很简单,当时想太多了,考虑了浏览器刷新频率等比较多的方面,结果应该并没有完全答对。补充一点,前面所有都是电话面,只有这一面是视频面试,估计是想看看真人,以及防作弊。
第六面,HR面
HR依然是视频面试,主要是聊了一下工作经历以及薪酬。薪酬方面并没有达到我的预期,Base可能和我现在的一样,主要是腾讯给的股票会很少。另外由于知道我也面了阿里,所以他也想知道阿里给的待遇,我诚实得告诉他这个还没确定。
阿里巴巴
由于本人之前在阿里干过两年,当时在团队内部算是年轻有为,技术扎实的骨干,所以老板也对我赏识有加。这次直接找他内推,他已经转岗到了一个新的事业部。
一面,电话面
也因为是曾经2年的同事,他对我的技术能力比较有信心,电话面试的时候没有太多的技术细节,主要是对业务上的理解。
Onsite面 技术交叉面、总监面和HR面都是到了阿里园区当面的,总体来说没有太多可说的,重点都没有面试技术细节,我准备的一些关于Vue实现原理、Webpack性能优化、网络协议等都没有问到。反而重点放在了对业务的理解,团队的技术建设方面。对业务的理解我觉得还行,但是最近两年在团队的技术建设上确实缺少一些拿得出手的成果(主要是因为现在公司的一些客观原因很难有技术上的沉淀),而我最擅长的技术部分根本没有面到。总体评估下来给了P7 的层级,不过如果熟悉阿里的同学会知道,其实内部还会有 P7-, P7 和 P7+ 的区分的,对应的待遇方面也会有区别。没能争取到P7+是很遗憾的,不过考虑到近两年在现在的公司确实没有太拿得出手的成绩,因此这个结果也是合情合理的。
说下时间,电话面结束后,约了下周一onsite,周一下午两个半小时三轮面试结束。不过审批Offer用了很长时间,到现在过了10天终于要谈待遇了,效率并不是很高。(考虑到某些童鞋面腾讯都花了一个多月,总体上来说速度也不是太慢)
拼多多
大家可能会对拼多多抱有一些看法,我去的意愿并不是很强。不过在这里有好处就是,拼多多的前端团队在最近几个月刚刚进行了大幅扩充,再加上业务量很大,所以技术上有很多可以做的事。因为都在上海,所以跟HR约了时间直接过去了。这次没找人内推,因为我不认识拼多多的人。到了拼多多之后,HR问了一些基本情况就开始技术面了。感觉HR说的最大的一点就是周日要统一加班。
一面
一面的面试官看起来跟我差不多大,后来得知是90年的,确实差不多。面试的问题都非常的基础,这里说的基础倒不是说简单,而是类似于JS语法、CSS布局、HTTP请求等问题,我可能回答的不是很认真,不过基本都能答对。
二面
二面是另一个前端Leader的交叉面,主要问了两个问题,都是手写代码,一个是Redux原理相关的问题,因为本人半年没用过了,API都记不清,一上来就卡壳了,后来经过提示还是比较顺利完成。另一个是JS的基本特性,比较顺利完成。后来跟他聊了一下这边的团队和业务发展的情况。
三面
第三面就真的坑了,因为HR一直找不到面试官,就让我明天再来。这样就感觉很不好,再加上本人对强制加班优点排斥、以及可能觉得去拼多多的可能性不大,后来我就推掉了,不想去面试。结果晚上他们的C端老大打电话邀请我过去,申请难却就约了周日过去聊聊。 周日的面试见到了C端的老大,竟然出人意料的年轻,88年的。面试持续了两个小时,对我简历上比较擅长的领域都做了详细的讨论,另外还有很长时间进行了业务上以及如何进行团队建设的交,总体来说是一次比较开心的有收获的交流。让我对加入拼多多的前端团队有了一些兴趣。
CTO面
CTO应该不懂前端,问的更多的是一些工作经历的事情,省略。
待遇方面
三面的面试官问了我的要求,觉得满足应该不成问题。后来得知我已经通过了阿里面试(腾讯是后来通过的),所以他们有强烈的意愿希望根据阿里给我的待遇来定薪资。
面试的心得
总体来说,如果希望能拿到阿里P7/腾讯T3.1的Offer,那么应该需要满足这几个点(当然我列出这些并不意味着这些都是我碰到的面试题):
- 前端JS/CSS基础足够扎实
- HTTP/HTTPS/TCP 等网络协议相关的常见知识点,XSS/CSRF等网络安全常见的知识点要掌握
- 前端的性能优化
- Webpack的原理,性能优化
- Vue/React至少能解释其中一个的基本实现原理,能说出他们的主要区别
- Redux/Vuex至少掌握其中一个的实现原理
- 常见的数据结构和算法,以及他们的时间复杂度,比如手写快排或者DFS
- 如果有后端开发经验、Weex/RN等更好 上面这些都是技术的,一般还会问一些团队建设以及业务理解等问题。
大家还有什么问题可以在评论区留言,我会尽量进行回复。
我理解的vuex 只是给所有的vue 实例添加了$store的引用而已。 因为vue自带了响应式系统,直接修改state也能实现功能, actions, mutations 是为了devtools 追踪状态变化。 (不知道这样理解对不对)。想听下大佬的看法。😂
@eltonchan 之前看过Vuex的代码,除了注入了 $store
之外,vuex
其实确实做了数据更新的检测,不过他没有自己实现一套,而是通过通过创建了一个 vue
实例来实现的。
actions
和 mutations
分开主要是为了除了Ajax这样的异步操作。
看了一下源码 确实是创建了一个vue实例来实现, 但是actions 和 mutations 这点的话意图并不是这样的。可以看尤大的回答:https://www.zhihu.com/question/48759748/answer/112823337。
大佬你好~能把你的文章在我的微信公众号上转发下吗?
你好,你邮箱地址写错了吧233333
在 2018年10月18日,上午2:56,chasercoder [email protected] 写道:
大佬你好~能把你的文章在我的微信公众号上转发下吗?
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/lihongxun945/myblog/issues/35#issuecomment-430848441, or mute the thread https://github.com/notifications/unsubscribe-auth/ApJhnYnNlIVNMkFGTnfKPAQ-fivvlRqvks5ul9_VgaJpZM4WJgmH.
看了之后,感觉自己水平更低了,难受