阅读 625

字节跳动(上海抖音)两天三面|掘金技术征文

前言

面试字节跳动的起源是一个同学在学院群里发了一个内推群,是上海抖音的招聘,我就投递了,基本流程走的很快,简历发过去很快就有hr加你微信来商量面试时间,当时因为疫情原因没有复工,所以约了一周后面试,两天面完三面,offer审批也比较快。下面是具体面试过程。

一面 3.9 50分钟

  1. 算法题:判断一个数组是不是搜索二叉树的后序遍历的结果
  2. tcp udp区别
  3. tcp如何实现有序传输
  4. tcp有序传输过去的数据还是分组的吗
  5. tcp三次握手
  6. 线程和进程
  7. threadlocal
  8. AQS
  9. aqs如何实现共享和独占
  10. 跳表,插入,删除,时间空间复杂度
  11. 数组和链表的区别
  12. 抖音实现关注和被关注,如何建表
  13. 缓存穿透

这一面问的蛮基础的,算法题也比较简单,只要认真准备春招的同学应该都能答出来。

二面 3.9 50分钟

  1. 项目使用的外部容器有了解吗
  2. volatile
  3. 单例模式
  4. Java 创建线程
  5. 如果是实现runnable接口的话,需要创建thread吗
  6. 线程池的运行过程
  7. 为什么要用springboot
  8. 算法题:二十分钟手写最大堆

这一面我面的很差劲,外部容器只知道是tomcat,其余不了解;写单例模式,双重检验中volatile的作用没解释清楚,和面试官还争起来了,最后发现是我自己写错了,当时就感觉要凉凉;算法题本来是一个topk的问题,我说要用优先队列写,面试官说那你直接写个最大堆吧(手动拜拜,所以说同学们千万不要给自己挖坑啊!!!),我凭着不清晰的记忆写了一下,思路是对的,但是跑用例应该是有问题的,最后还是让过了。

三面 3.10 50分钟

  1. 项目相关
  2. url到页面的过程
  3. 智力题,岛上,有红帽子白帽子,自己不知道自己的帽子,如果知道了自己的帽子,当晚就会离开。有一天有一个人来,告诉岛上的人,你们中至少有一个红帽子,请问之后会发生什么?
  4. 矩阵中的最长上升路径
  5. 平常怎么学习一些新技术
  6. 最近在看什么书
  7. 并发编程那本书中,给你印象比较深刻的点

这一面应该是主管面了,没问基础知识,大部分时间在智力题上,一开始没什么思路,后面在面试官的提醒下也算是把答案弄出来了。算法题比较常规,是leetcode热题。最悲催的是我面完去牛客网上发现了一模一样的三面面经,还是要多刷牛客网hhh。

总结

可以看到,相比阿里美团等公司,字节跳动对于项目的关注并没有那么多,更多的关注你的算法能力和智力(?),比较在乎算法的效率和解题的速度,其他地方答的不够好,只要算法做得好,还是有可能力挽狂澜的,适合那些项目经验不够丰富,刷题能力强的同学去试试,当然你要是有丰富的项目经验就更好了。并且字节的面试效率很高,面试体验算是春招以来最好的一家。

当然,就我个人的经历来看,面试还是有点碰运气的感觉。遇到做过的就秒了,遇到没做过的或是不熟悉的就会很懵,即使最后做出来了也是磕磕绊绊的,给面试官的印象不好,所以希望大家还是做好准备,多刷题总是没错的。