字节跳动后端开发-暑期实习 已OC及PingCAP面经

字节跳动 Data-抖音/直播/剪映团队-后端

2022.03.09 一面

(这个不是自己投的,HR 在牛客上捞的,我就想面一下试试好了)

项目部分

  • 自我介绍
  • 简单介绍一下最近参加的项目
  • 为什么会选择这个项目
  • 讲一下你是怎么设计 API 的,有什么原则
  • 讲一下你是怎么使用 valgrind 检测内存泄漏并修复的

八股文部分

  • 讲一下堆和栈的区别
  • 函数内的非 static 对象在内存的哪个位置
  • 一般的 static 对象在内存的哪个位置
  • 如何避免内存泄漏、空指针、越界访问等问题
  • 介绍一下 C++ 中的智能指针
  • 讲一下 newmalloc 的区别
  • newmalloc 分配内存出错各自会返回什么
  • delete [] 怎么知道要销毁多少内存空间
  • 介绍一下面向对象的基本特征
  • 重载和重写的区别
  • 有用过 Redis 和 MySQL 之类的中间件吗
  • 讲一下 TCP 的三次握手和四次挥手
  • 为什么需要三次握手和四次握手(而不是两次 / 三次)
  • 挂起的链接过多会有什么影响,应该怎么处理
  • 你会怎么设置 timeout 时间

算法部分

后端开发工程师-系统架构

2022.03.11 一面

(03.09 那个面完马上就出结果挂掉了,然后就投了这个组)

闲聊

  • 自我介绍
  • 你是考研还是保研
  • 为什么选择上海,是比较喜欢上海吗
  • 第一次考研就选择了现在的学校吗
  • 只考虑上海的工作吗,北京的工作会考虑吗
  • 最近的项目也结束快半年了,最近在做什么

项目部分

  • 问了下实验室项目及研究方法之类的,此处省略
  • 需要发小论文吗
  • 介绍一下之前参与的项目,代码都合并了吗?

八股文部分

  • 介绍一下 TCP / IP 七层模型
  • 你抓包的时候有见到过 RARP 的包吗
  • 你觉得为什么会比较少
  • 如果是交换机呢,交换机怎么知道哪个 IP 对应哪个 MAC
  • Linux 内核默认 TCP timeout 时间
  • 你确定这么久吗,在哪里看的
  • 你平时怎么确定 TCP 有没有丢包
  • 确定 iftop 可以看丢包吗

算法部分

反问及闲聊

  • Q: 面试官你们组主要是做什么的
  • A: 设计高速网络通信协议的

2022.03.15 二面

项目部分

  • 自我介绍
  • 介绍一下参与的项目
  • 介绍一下项目中印象比较深刻的部分
  • QEMU 在做 live migrate 的时候 libvirt 负责到了哪一部分,你有了解过吗
  • 省略一部分详细聊项目内容
  • 你现在是研几?有读博打算吗

算法部分

反问及闲聊

  • Q: 面试官你们组是会做虚拟化相关的吗?
  • A: 不完全是,[此处省略很多字]
  • Q: 平常会用到 eBPF 或者 XDP 这些技术吗?
  • A: 会,[此处省略很多字]
  • Q: 有考虑过使用 Rust 进行 RDMA 相关的开发吗?
  • A: 目前还是主要以 C/C++ 为主,也会用到 Go,脚本会用 Shell 和 Python,语言终究只是一个工具不是目的,如果你感兴趣的话也可以用 Rust 去实现一些东西,这也是可以的

2022.03.22 三面

项目部分

  • 自我介绍
  • 讲一下你觉得做得最好的项目
  • 问了下项目相关的问题,此处省略
  • 如何保证你在项目中实现代码的正确性
  • 遇到的困难
  • 有做过网络相关的项目吗

八股文部分

  • 如何保证 TCP 传输的可靠性
  • 说一下你了解的数据中心中会用到的网络技术
  • 用过 socket 编程吗
  • UDP 会不会出现只收到一部分数据的情况,TCP 呢
  • 如果用 TCP 发送 4MiB 的内容会经历哪些过程
  • 你觉得设计 MSS 和 MTU 大小时要注意什么
  • 假如交换机和服务器设置的 MTU 不一样会怎么样

算法部分

  • 236. 二叉树的最近公共祖先(整个阶段一直在考虑结点不在树中的情况,把自己绕进去了,一开始忘了递归调用,面试官提醒后改了,但还是有其它问题,面试官也很耐心地和我讨论哪里有问题并给提示,但我一直在考虑结点不在树中的情况,觉得面试官的思路有点问题,然后就尬住了,但还好最后写出来了)

2022.03.28 HR 面

2022.04.06 OC

面试官都很非常友好,面试体验很不错,HR 也很负责很耐心。


PingCAP 测试平台开发实习生

2022.03.28 一面

项目部分

  • 自我介绍
  • 你觉得哪个项目是你觉得做得最好的(现场打开 GitHub 看代码)
  • 讲一下单元测试和集成测试的区别
  • 介绍一下你觉得 C++ 和 JavaScript 设计上的区别

八股文部分

  • malloc 分配内存用到的系统调用
  • 协程有用过吗(没用过,但简单讲了下概念)
  • 讲一下锁的种类
  • 自旋锁需要操作系统满足什么特性
  • 加锁和轮询需要满足什么性质
  • 从下往上介绍一下网络层次模型
  • 你有没有觉得 UDP 和 IP 的功能有所重复,说一下 UDP 在 IP 的基础上额外实现了什么
  • HTTP/2 了解过吗
  • 有没有听说过队首拥塞问题
  • 你觉得应该怎么解决队首拥塞问题
  • 讲一下 TCP 三次握手
  • 你觉得三次握手有什么问题
  • 怎么解决 SYN Flood(Ban IP 之类的)
  • 怎么设计一个新协议解决 SYN Flood(给了提示,想了半天才答出来用 Cookie)
  • 如果两个同事分别觉得他们的思路对客户更好,能让客户更好地利用系统,你会怎么做
  • 在设计一个大的系统时,分工协作过程中你认为什么最重要
  • 给你 4T,40T,4000T 的数据你怎么排序
  • 如果我要做分布式排序,最重要的是先搭建什么平台

算法部分

PingCAP 的面试官也很 nice,如果没回答出来或者答错了会告诉你答案,整个问答的过程也会让你明白有些东西为什么会设计成现在的这样

#字节跳动实习##字节跳动##面经##PingCAP#
全部评论
系统架构的是什么部门啊
2 回复 分享
发布于 2022-04-08 07:58
lz我问一下你pingcap在哪投递的呀,我在官网找了圈没看到
1 回复 分享
发布于 2022-04-11 12:02
几点oc的呀
点赞 回复 分享
发布于 2022-04-07 13:15

相关推荐

评论
8
70
分享

创作者周榜

更多
牛客网
牛客企业服务