字节跳动,我的前端春招面经(4轮技术面+hr面)

字节跳动,我的前端春招面经(4轮技术面+hr面)_第1张图片

交代背景

个人背景:武汉理工大学(211)计算机系毕业生,准备找工作。最近找大佬内推,投了北京字节跳动,据说是非常核心的一个小组,要求很高。总共经历了四轮技术面试和一轮hr面,不多说,直接上题:

一面 50分钟左右

1、自我介绍,然后问了为什么学习前端
2、算法:实现36进制转换
3、简述https原理,以及与http的区别
4、操作系统中进程和线程怎么通信
5、node中cluster是怎样开启多进程的,并且一个端口可以被多个进程监听吗
6、实现原生ajax
7、vue-router源码
8、vue原理(手写代码,实现数据劫持)
9、算法:树的遍历有几种方式,实现下层次遍历
10、算法:判断对称二叉树

第一次面试,当时比较紧张,面试官很和蔼,面试中问到操作系统的进程,当时不记得操作系统,就提到了node多进程,然后面试官就问了cluster是怎样开启多进程的,并且一个端口可以被多个进程监听吗?答完后面试官就问了后面写完vue数据劫持的时候,面试官又问了Object.defineProperty除了set get外还有什么属性,我回答了configurable enumerable。vue-router主要提到了hashchange事件等,顺便跟面试官聊了一下h5的historyAPI。时间总共是50分钟左右,一面完了后面试官让我等五分钟,接下来二面就开始了

二面 40分钟左右

1、介绍一下项目中的难点
2、let var const 有什么区别
3、你知道哪些http头部
4、怎么与服务端保持连接
5、http请求跨域问题,你都知道哪些解决跨域的方法
6、webpack怎么优化
7、你了解哪些请求方法,分别有哪些作用和不同
8、你觉得typescript和javascript有什么区别
9、typescript你都用过哪些类型
10、typescript中type和interface的区别
11、react怎么优化
12、算法题:合并乱序区间

在回答http头部的时候,顺带跟面试官聊到了浏览器缓存,回答跨域的时候,面试官又让我用jsonp实现一下跨域,回答webpack的时候提到了happypack和treeshaking,面试官就顺带问了一下他们的作用,算法题我当时没有写出来(主要是因为菜),二面大概40多分钟结束,面试完后面试官说稍后hr会联系我,让我注意保持通信,还没过一小时,hr打电话约我第三次面试时间,不得不说,字节的效率真的高。

三面 1小时左右

1、你了解node多进程吗
2、node进程中怎么通信
3、node可以开启多线程吗
4、算法题:老师分饼干,每个孩子只能得到一块饼干,但每个孩子想要的饼干大小不尽相同。目标是尽量让更多的孩子满意。如孩子的要求是 1, 3, 5, 4, 2,饼干是1, 1,最多能让1个孩子满足。如孩子的要求是 10, 9, 8, 7, 6,饼干是7, 6, 5,最多能让2个孩子满足。
5、算法题:给定一个正整数数列a, 对于其每个区间, 我们都可以计算一个X值;X值的定义如下: 对于任意区间, 其X值等于区间内最小的那个数乘上区间内所有数和;现在需要你找出数列a的所有区间中, X值最大的那个区间;如数列a为: 3 1 6 4 5 2; 则X值最大的区间为6, 4, 5, X = 4 * (6+4+5) = 60;

三面大概是1小时,面试官比较冷漠,就问你知道不知道,算法思路,然后实现这个算法,
面试完感觉凉凉,但是第二天就收到hr到来的电话,约下一轮的面试时间。

四面 一小时左右

1、算法题:两个有序链表和并成一个有序链表
2、https与http有什么区别(一面刚好也被问到)
3、cookie有哪些属性
4、cookie,session,localstorage,sessionstorage有什么区别
5、怎么禁止js访问cookie
6、position有哪些属性
7、你知道哪些状态码
8、options请求方法有什么用
9、less,sass它们的作用是什么
10、平时怎么学习
11、你什么时候可以来实现
12、能实习多久

四面算是比较简单的一次面试,但我磨磨蹭蹭了一个小时,面完后第二天晚上hr打来了电话,约与hr面的时间

hr面 30分钟左右

1、你什么时候接触前端的
2、平时怎么学习
3、对未来的规划是什么
4、你对哪个项目印象深刻,说一下项目的难点
5、你对我们公司有什么了解
6、能实习多久等等

hr面主要聊一聊人生理想,未来规划啥的,大概半小时的时间

面试感想

需不需要准备面试题
看到这里,相信读者也已经感觉到,许多面试题是有套路和重点难点的。我把平时看过的面试题做了一个汇总大家可以无偿领取。需要前端面试题完整版的看这里

96道前端面试题:
字节跳动,我的前端春招面经(4轮技术面+hr面)_第2张图片
常用算法面试题:
字节跳动,我的前端春招面经(4轮技术面+hr面)_第3张图片
不注重基础
很多网友都是在视频、网页中了解的javascript,觉得很简单,过于盲目自信,其实基础不扎实是面试失败的常见原因之一,面试leader一般重视面试者对前端基础的把握,如果最基础的都过不了,那就更不要谈后面的面试机会了。

项目准备
项目在面试中也十分的重要,是你和面试官重要的谈资。尽量有一两个高水平的项目或作品,而且要对项目的所有细节都足够的熟悉。

文章就写到这里,感谢大家阅读,祝愿大家能找到满意的工作。

你可能感兴趣的:(面试,字节跳动,前端,算法,css)