前言

 

前段时间,我一哥们去面试字节跳动,我听他说过程艰难,但还是费了九牛二虎之力拿下了。

字节跳动的面试挺有挑战性的感觉,不过还是挺有趣的,感觉啥技术都问。今天就跟大家说说字节跳动的面经。

 

好了,我们来进入主题吧。

一面

  • 自我介绍
  • 聊项目
  • Redis了解多少,熟悉哪一些数据结构? zset底层怎么实现的?
  • Redis 集群方案应该怎么做?都有哪些方案?
  • 如果是IO操作为主怎么确定?
  • 说说 Redis 哈希槽的概念?
  • zookeeper 是如何保证事务的顺序一致性的?
  • 分布式集群中为什么会有 Master主节点?
  • 为什么要用 Redis 而不用 map/guava 做缓存?
  • Tomcat工作模式是什么?

二面

  • 自我介绍
  • 问项目
  • 谈谈Mysql,说一下索引结构,为什么要使用B+树?
  • Volatile 关键字有什么用?怎么理解可见性,一般什么场景去用可见性?
  • NIO 与 BIO 有什么区别?
  • 说一说Netty 原理。
  • Dubbo的RpcContext是怎么传递的?主线程的ThreadLocal怎么传递到线程池?
  • 什么是索引覆盖?
  • SpringMvc 里面拦截器是怎么写的
  • SpringMVC 怎么样设定重定向和转发的?
  • 如果目标类没有实现接口,那么 Spring AOP 会选择什么目标类?
  • 说说业务中,Netty 的使用场景
  • Dubbo 连接注册中心和直连的区别
  • GC 的三种收集方法是什么?原理与特点?分别用在什么地方?如果让你优化收集方法,有什么思路?

 

三面

  • Kafka 内部原理?工作流程?
  • 怎么实现 Exactly-Once?
  • CAP 是指什么?Mysql 满足CAP中哪些?
  • 什么是一致性Hash?自己实现一致性 Hash,会用什么数据结构?
  • 单例对于单例,你知道哪些实现方法?
  • 快排算法是否稳定?什么是稳定性?
  • MySQL 中使用什么存储引擎?
  • 数据库的三范式?
  • 你有什么想问我的?(部门定位?岗位职责?加班情况?薪酬福利介绍?)

总结

我哥们说他差不多就是这么个过程吧,其实不管是面试官也好,去面试的朋友也好,面试官没有大家想得那么恐怖,足够的底气和自信是需要锻炼的,当然也要有一定的实力哦,才拿得住才能端稳“饭碗”。

众所周知,面试前的“练手”还是很重要的,所有开始面试之前一定要准备好哦,不然也是耽搁面试官和自己的时间。

福利

这里给大家送一个小福利,平时整理了一些常见的面试题目以及技术问题。一些大厂的面试真题(都整理成文档,小部分截图)。

希望能够帮助到大家。需要可以转发+关注后 

 

 

多刷题,多刷题,后面硬啃了好长一段时间才补回来,祝大家offer拿到手软哦~