博主 3 月份在腾讯官网投递 Web 前端开发岗,一路从提前批走到正式批,战线长达3个月...真的不容易(菜是原罪),特此记录下征战鹅厂的面经,希望可以帮到大家。
提前批
一面 官网显示流程——初试 3.14(电话面 + 视频面)
-
自我介绍,怎么学前端的
-
CSS 常见两列布局、三列布局
-
CSS 水平垂直居中
-
闭包,JS 没有闭包的话会怎么样
-
typeof 和 instanceof
-
js 的原型链,继承
-
js 的 bind、apply、call 有什么区别
-
var、let、const的区别
-
new 操作符原理(手动实现 new 给出思路)
-
箭头函数,箭头函数 this 问题,箭头函数是否可以被 new
-
promise 知道吗,手写一个 promise 怎么写(说思路)
-
promise.all 应用场景
-
promise 和 async/await 的区别
-
vue 的生命周期(我说我 React 比较熟)
-
react 的生命周期(React16)
-
react 性能优化
-
react 的 diff 算法
-
react 的 Fiber 架构
-
状态码 304(强缓存和协商缓存)
你有什么要问的吗?
面完加了面试官 qq,第二天qq远程视频,手写原生 DOM 拖拽和大数相加。
一面大概 1 个小时左右,比较注重 JS 和 CSS 的基础能力。面试官人很温和,通过后立马打电话和我说,这种尘埃落定的感觉真好~
面试完官网状态从初试变成复试~
二面 3.20(电话面)
-
自我介绍,说说项目遇到的坑
-
看你项目 ES6 用的比较多,说说 ES6 的一些新特性
-
有没有考虑对图片处理的优化手段,说说常用的
-
图片懒加载怎么做
-
考虑过缓存方面的优化吗,强缓存和协商缓存区别
-
防抖和节流
-
实现无缝滑屏,你觉得怎么实现
-
dns 查询原理
-
tcp 握手和挥手
-
tcp 和 udp 区别,udp 使用场景
-
https 和 http 区别
-
http2.0 相比 1.0 好在哪
-
抓包会吗,抓包原理,fiddler 用过吗
-
跨域
-
csrf、xss,如何预防
-
项目的 webpack 配置
-
plugin 和 loader 的区别
-
写过 webpack 的插件吗(没写过)
-
webpack 单路口和多路口打包配置,为什么需要多路口
-
babel 的编译原理,抽象语法树
你有什么要问的吗?
二面聊了很久,一个多小时,面试官非常厉害(应该是部门组长),整体处于被碾压的情况...然后面试官说可能会有三面,让我再准备下。
感觉答得很一般,当时回去恶补了 webpack 以及性能优化的东西。
面试完官网状态依旧是复试。
三面 3.28(视频面)
-
自我介绍,为什么会选择学前端呢?
-
看你做了挺多项目,有没有在架构层面上考虑过对项目的优化
-
MVC MVP MVVM 架构了解吗,他们的使用场景
-
怎么理解前后端分离思想
-
和后端一般是怎么沟通和联调的
-
网络安全
-
看你用过 nginx,聊聊 nginx 吧
-
docker 也用过?(不是很熟还是别往简历上写给自己挖坑啦..)
-
后端技术栈了解哪些
有什么想问的吗?
三面大概半小时...面试官应该是部门技术总监,问的问题非常广,从大的架构层面往小的技术方面问,由广度到深度。
整体气氛比较深沉...和巨佬聊技术有点格格不入T_T,巨佬说会考核下,然后让我等电话..
后来..后来..官网流程就灰了...电话呢?!提前批——挂。
但好在比较幸运是,在面腾讯之前拿到爱奇艺的实习机会~ 所以也不至于无路可走T_T
在等正式批的这段时间里,白天在公司上班,晚上恶补基础,在恶补的过程中,才发现自己之前面试答得简直一坨shi ...很多需要深挖的知识点,渐渐感觉时间不太够用(..•˘_˘•..)
正式批
26号突然收到面试邮件,约了 28 号晚上 7 点的面试..
赶紧到官网查看流程,灰了一个多月,终于亮起来了!!感动!!
一面 官网面试流程——初试 4.28(电话面)
-
自我介绍,在校情况
-
圣杯布局、双飞翼布局
-
CSS 媒体查询
-
CSS 动画、CSS 对网页性能优化
-
浏览器渲染原理、回流与重绘
-
JS 单线程、EventLoop、宏队列、微队列
-
Go 语言知道吗?为什么 Go 效率比较高?(只是了解,效率高大概是因为多线程?)
-
Ajax 和 Fetch
-
怎么同时让多个异步请求并行?
-
跨域问题
-
xss 和 csrf (聊到跨域基本都会聊跨域安全问题,所以这两个知识点可以一起准备)
-
session 和 cookie
-
服务器怎么知道 session 过期?
-
怎么设置 cookie 过期时间
-
sessionStorage 和 localStorage
-
强缓存和协商缓存
-
ES6 数组新增方法
-
ES6 箭头函数和普通函数区别
-
promise、generator、async/await
-
react 父子组件传参
-
PureComponent 知道吗
-
React 性能优化
-
Redux 原理,Redux 源码看过吗?Redux 中间件呢?
正式批一面了大概1个半小时... 全程没喝一口水... 自我感觉答得还行,面试官也说还不错hh
但是...但是...第二天看官网居然灰了????
当时心里拔凉拔凉的,晚上没吃饭没洗澡躺尸,亏我准备这么久
但是过了两天,突然又接到电话,是正式批一面面试官打来的..........
他说他的部门(IEG)HC不够了..把我调剂到另外的部门(PCG)去了...然后要重新启动流程,所以把我灰了..让我赶紧准备另一个部门的面试
所以又开始了艰难的——走流程..
不得不吐槽鹅厂流程太长了!!也有可能是自己太菜...排名比较靠后
正式批补录
一面 (官网面试流程回到初试.. 5.07电话面)
-
自我介绍,看你简历,以前是写Java的?
-
那你觉得 java 里的继承和 JS 里的继承有什么区别
-
JS 垃圾回收
-
JS EventLoop
-
ES6 新特性
-
知道装饰器吗
-
数组方法 map、filter、reduce
-
新数据结构 Set、Map
-
babel 的编译原理
-
webpack 工作流程和原理,怎么写一个插件
-
JS 基础还行,问问网络相关知识?(好..)
-
从 url 到页面渲染过程
-
你刚说到 DNS 解析 能详细说说嘛?DNS 递归和迭代的区别呢?
-
TCP ?UDP ?区别是什么,你说 TCP 头部很大,具体有哪些报文信息呢?
-
页面渲染 重绘与重排 页面加载如何优化
-
http1.1 / http2.0 / https
-
聊聊数据结构的东西吧 算法怎么样?(一般..)
-
栈、队列、树、图一些基础
-
最短路径算法能简单聊聊实现吗 (迪杰斯特拉算法)
-
树的深度优先遍历、广度优先遍历实现和区别
-
一棵二叉树要用数组存储,这棵树要具备哪种条件?(完全二叉树)
-
实现括号匹配用数据结构怎么做?说说思路 (栈)
-
快速排序原理
有什么想问我的?(实习在什么事业部,具体做什么?手Q,做手Q新业务)
一面大概1个多小时,面试官比较严肃,也很厉害... 问的问题拓展性很强。
而且非常注重基础, 数据结构、计算机网络...很重要!
虽然感觉答得一般,但面试官评价还行...运气真好
二面 5.13(电话面)
-
自我介绍,说说你学前端的历程吧
-
说说项目中遇到的坑,怎么解决的
-
项目中有考虑到哪些优化的地方?
-
小程序的富文本为什么选用 wxParse,富文本原理
-
图片有哪些格式,知道 WebP 格式的图片吗,图片的一些优化手段
-
图片懒加载原理
-
跨域
-
前端常见攻击方式
-
状态码
-
强缓存和协商缓存
-
Node 的优势
-
Express 和 Koa 区别
-
react 路由原理
-
react hooks
-
redux 异步中间件实现原理
-
Vue MVVM原理
-
服务端渲染原理
-
nginx 的配置,反向代理、负载均衡原理
-
知道 PWA 吗
-
hybrid 技术
-
Flutter 了解吗
-
看过源码吗?
有什么想问的?
二面聊了一个多小时,面试体验很棒!面试官人超好,不断的引导我回答出答案...
最后还说帮我约三面的面试官,给人感觉很暖!
后来看官网状态从初试变成复试~
三面 5.22(视频面)
-
自我介绍,说说项目踩坑
-
使用框架踩到坑时,有没有去看过源码?
-
在做项目时,有没有从架构层面考虑过?
-
我现在有个需求,需要实现一个 web 端的微信,你想想该怎么实现
-
怎么看待前后端分离思想,以及服务端渲染技术
-
写过脚手架吗?
-
了解过设计模式吗?
-
后端的技术栈有了解吗?
-
平时是怎么学习的,学习习惯,为什么学前端?
-
你有什么想问的?
三面聊了半个小时,面试官是部门技术总监,看上去很和蔼...一直在安静听我说
面试感觉就像在一起聊天,也没有提前批的那种沉重感...大概是被虐多了,习以为常~
面试完官网状态秒变成 HR 面试!!
HR面 5.27 (电话面)
-
自我介绍
-
家庭情况
-
平时是怎么学习的
-
说一个你做的最好的项目~
-
怎么看待现在的互联网趋势 (我说5G可能是第四次工业革命的导火索...)
-
如果要来深圳的话,方便吗
你有什么想问的吗?
HR 是一个小哥哥,人很好,声音很好听,面试了10分钟左右
最后还说会帮忙催 offer,真的很感谢他!
OC 6.11 (拿到offer)
oc真的等的很着急...好在终于拿到了 offer!!
我的经验
实习并不难,实习不是社招,比起社招难度小得多!基础很重要,面试官基本是看你的基础能力和你的发展潜力。
简历很重要,一个好的简历可以让面试官快速了解你,当然记住不要给自己挖坑。
沟通很重要,不会就说不会,毕竟不可能啥都会,实事求是。然后尽量引导面试官向你会的问题上问,多准备点亮点,例如框架源码,新技术等..
电话面试时,可以录音,回过头听听面试官的问题,慢慢积累面经。
祝大家都能顺利拿下心仪 offer!
小编语:
我们想要记录更多程序员的生活,欢迎你把自己的故事投递过来,让更多人听到
你也可以关注公众号【爱前端】,一起分享他们的故事
全栈前端技术交流解答群:137503198 加入获取课程介绍及优惠名额,领取爱前端【内部资料+免费试听】!
网友评论