字节跳动 - 今日头条 - 前端面经

QuincyChen

之前面试其实拿到了不少 offer,感兴趣的可以看看我关于这次挪坑的总结,最终权衡各种因素选择了字节跳动 - 今日头条的岗位。

入职字节跳动已经两天了,从入职的这两天来看,我觉得我这次跳槽是一个正确的决定,并且也很认可字节跳动的氛围和环境。这是一个很开放、年轻化、活跃的公司,但是在流程、管理、技术上却完善的不像一家年轻的公司,很符合我对自己下一份工作的期许,我相信我可以在这里学到不少东西,也可以贡献一些自己已有的东西。

写这篇面经主要是来捞简历的,哈哈哈哈,字节跳动长期不限量招收前端工程师,中高级、校招社招都收,有需要内推的同学欢迎邮件骚扰我,邮件地址:mail@quincychen.cn

以下是面经内容

一面

  • 自我介绍
  • mysql 和 mongoDB 的底层存储是什么原理,有什么区别?

    • B+Tree 有什么特点
  • redis 内部常用的数据结构有哪几种?
  • 一个 200 状态的请求,是否一定会经过服务器?

    • 浏览器缓存分为哪几种?具体讲一讲
  • 状态机的三个组成部分是什么?
  • service worker可以做什么?局限或者说缺点是什么?
  • 说说你对 HTTPS 的理解

    • HTTPS 密钥的交换过程
    • HTTPS 绝对安全吗?HTTPS欺骗是怎么实现的?
  • react 是怎么将数据变更反应到视图上的
  • vue是怎么解析模板的?
  • 三大框架从数据到视图的原理

    • 谈谈你对虚拟Dom的理解
    • angular的脏检查和vue的双向数据绑定有什么区别?
  • 聊一聊你的工作经历
  • 你提到你有负责 sdk 开发,讲一讲你开发过的 SDK

    • cloudbus-event

      • 事件发布订阅怎么实现的?
    • terra-uploader

      • 大文件上传怎么实现?有什么注意点?

        • 分片上传怎么实现?
        • 断点续传怎么实现?
    • app-info-parser

      • 安装包的解析原理是什么?
  • 你有什么想问我的吗

二面

  • 自我介绍
  • 在线编程:实现 bind 函数
  • 在线编程:实现 call,apply 函数
  • 在线编程:实现一个判断变量类型的函数
  • 在线编程:a~z 有 26个字母,按照 1~26 编码,现在给定一个数字字符串,输出所有可能的解码结果,如:输入 1234,输出 ['axd', 'abcd', 'lcd']
  • 类数组怎么转换为数组?
  • 箭头函数和普通函数有什么区别?
  • // 以下代码执行会输出什么
    const  myfun = () => {
        const args = arguments;
        if (true) {
            console.log(args.join());
        }
    }
    myfun(1, 2);
  • 实现一个 div 相对视口居中
  • marigin 塌陷是什么
  • vue3.0 和 vue2.x 的有什么区别
  • 为什么会做 app-info-parser 这个开源项目
  • 你有什么想问我的吗

三面

  • 自我介绍
  • HTTP2 与 HTTP 的区别
  • CDN 原理
  • Vue 的 Dom diff 的实现

    • 完全比较两个 Dom 树和只比较同层节点的算法复杂度各是多少
    • Dom diff 具体流程是怎么样的,内部细节能说一下么
  • 说说你对 Node 运维的了解
  • 假如现在,我说有一个页面打开有点慢,交给你来负责优化,你的思路和做法是什么

    • 前端优化的指标有哪些,通过什么手段获取?
  • 分别讲讲 restful 和 graphQL 及其优缺点
  • 你现在有面其他公司吗?手上有没有其他offer?
  • 如果阿里腾讯都过的话,包括字节跳动,这三家你会基于什么去考虑?
  • 你有什么想问我的吗

总结

字节跳动很重视编程能力,写代码的题目比较多,也会有算法题考核,所以想要到字节跳动的同学建议多训练一下这一类的编程题。给我出的题目难度其实不高,唯一的一道算法题是简单的一道动态规划(你别看我,一般的动归真的不难啊!),其他的编程题都是很基础的内容,没有什么难度。

字节跳动这一次面试下来,面试体验还是很不错的,面试官和 HR 也很有诚意,非常坦诚的罗列字节的情况,包括优缺点,拉人也很真诚,这一点加了很多分,最终权衡公司技术水平、薪酬情况等因素,pick 了字节跳动。

有意向加入字节跳动的朋友们,欢迎砸简历或者邮件与我联系!!邮箱:mail@quincychen.cn

内推成功奖金五五分成!!(肮脏但是诱人的 py 交易

阅读 4.3k

我在熬夜,熟了喊你

51 声望
7 粉丝
0 条评论
你知道吗?

我在熬夜,熟了喊你

51 声望
7 粉丝
宣传栏