2019届 字节跳动C++校招面经(一二三hr面,已拿offer)

双非学校,大四无实习经验,考研难民。。2019届毕业
今年考完研以后参加的第一次面试。
如今发出面经来回馈一下前面看过的那么多面经。linux

一面和二面都是同一天面的,hr在三面后的两天后。web

(不贴具体的题目了,都是些挺基础的)面试

第一面(50 min)

考察的东西:算法

  • 进程和线程,细节、区别、原理
  • TPC和UDP,是否双工等
  • HTTPs和HTTP协议的细节和不一样,好比HTTPs的公钥私钥
  • 三次四次握手
  • 智能指针的细节
  • 二叉树遍历的非递归写法,现场写
  • 多线程的具体使用和各类同步方法的优劣和不一样
  • 进程间通讯的方法,和socket的不一样和相同点
  • 不一样操做系统下的进程间通讯

面完面试官说立刻有第二面,等几分钟,我说ok,而后很快另一个面试官就来进行第二面。数据库

第二面(1 h 29 m)

这一面主要聊项目和基础:编程

  • 项目相关,聊了好久
  • mallocalloc的底层细节
  • 内存相关,如内存碎片管理和STL大内存的搬运方式,如何优化的,为何须要优化和内存池等细节
  • STL相关不少细节
  • 一个中等难度的算法题
  • 我额外讲了一下操做系统分页方式致使STL内存池的构建

差很少就是这样了,感受编程题的算法不算很难,但主要是考验你的代码能力和debug能力,对于基础这些问的很仔细和全面,操做系统,C++,网络,linux,数据结构和基本工做会用到的算法,都问了一个遍,问了的基本上都答上了(除了linux方面的东西,我直接说的我不太熟悉就没再问了)。网络

面完次日给我打电话约次日晚上面试,而后次日早上给我点电话,由于面试官临时有事更改到了后一天,其实这样也好,缓解了一下个人紧张。数据结构

三面(45min)

感受这面答得不算太好,虽然全都能说好久,可是深度没说上去,一直在说车轱辘话:多线程

  • 自我介绍
  • 项目,聊了好久,感受是搞过图像处理的大佬
  • 内存管理相关细节
  • 几个代码题,实现智能指针
  • 有什么想问的吗?

HR面

问了一下大体的能够工做的时间,还有毕业时间,还有就是对前面面试的见解了。
大体如此。socket

总结

hr面以后大概一周就收到了offer,但愿对你们有必定的帮助。 感受三场面试的面试官都比较偏技术,人也很和蔼,问的问题也和岗位关系很密切,没有出现我面C++客户端一直怼个人数据库的状况。 总的来讲是很不错的面试体验,和我想象中的字节跳动那种很好的技术氛围很相似。