暑期实习03 —— 字节五面,从抖音二面到系统架构offer
作为年轻与活力代表的字节跳动,虽然后端大多是go的技术栈,但作为为数不多日常实习和暑期实习hc都比较充足的大厂,我也从寒假开始投递日常实习,从抖音C端(二面挂)到系统架构(offer)...
抖音C端 —— 增长营销
1.20 一面
评价:分外年轻的小哥,感觉很青涩
1. 项目
1.1 讲一讲自己C++服务器项目和Muduo库的比较
2. 数据库拷打
2.1 写一个MySQL语句 -> 类似 185. 部门工资前三高的所有员工
2.2 为什么选择B+树作为索引,回表是什么
2.2 为什么选择B+树作为索引,回表是什么
2.3 MySQL有哪些索引相关的规则 -> 只知道联合索引中最左前缀原则
2.4 讲一讲索引下推
2.5 Redis缓存和数据库的一致性,延迟双删
3. 计算机网络
3.1 close_wait状态多久出现,出现原因是什么
3.2 linux查看网络状态的命令
4. 手撕算法
4.1 3. 无重复字符的最长子串 -> 常见题,5分钟a
4.2 48. 旋转图像 -> 常见题,5分钟a
评价:严刑拷打的一场面试~
1. 计算机网络
1.1 应用层除去HTTP之外还有什么 -> SMTP, FTP
1.2 知道rpc吗,详细解释一下
1.3 TCP粘包现象
2. 操作系统 -> 算法 (这是一个很巧妙的过渡)
2.1 讲一讲操作系统的死锁,死锁形成的条件以及如何避免
2.2 在实际情况中文件相互引用也会造成死锁 -> 讲了链接时候的头文件引用情况
2.3 写一个判断文件相互引用的程序
a. 每个文件可引用多个文件,应该是结构体的形式
b. 形成一个图的形式,需要dfs和bfs
没写出来 , 说了这个很想找到链表中是否有环
2.4 变成 142. 环形链表 II(这时候已经知道凉了,可能是面试官为了给我一点尊严)
a. 记录节点地址判断
b. 快慢指针判断
结果写代码的时候又调了巨久,凉上加凉……
评价:实力不足,基础不扎实,知识广度不够,算法也写不好……
此后没有再投字节,直到拿到阿里口头oc但是一周没有动静之后,决定找个下家
系统架构 (C/C++/Go)
3.31 一面
评价:体验不错的面试~
1. 项目问题
1.1 项目问题 -> 讲一讲muduo库中你觉得最巧妙的设计
2. 计算机网络拷打
2.1 TIME_WAIT状态的详细分析,何时出现,何处出现,为何出现,是否有弊端,如何避免
2.2 结合七层模型讲一讲网址键入的全过程
2.3 如果没有网络连接,应该从哪些方面去排除问题
2.4 ping的底层
2.5 traceroute的底层
3. 手撕算法
3.1 40. 组合总和 II -> 变形:考虑有负数的情况呢
3.2 53. 最大子数组和 -> 为啥你做这么快 :浙大数据结构网课第一节课讲了4种方法~
4.1 二面
评价:最nice以及面评最好的一场字节面试~
1. 操作系统相关问题
1.1 物理地址和逻辑地址之间的转换 -> 从Linux的内存管理到MMU
1.2 简介网络层模型 -> 知道Linux内协议栈的实现吗
1.3 数据在内核空间和用户空间之间的拷贝 -> 零拷贝问题(讲到CSAPP中浅显的DMA)
2. 算法题
面试官有意放我(类似于哈希表统计字符频率的eeeeeasy题)
3. 聊天
3.1 是否读研
3.2 主要工作
4.6 三面
评价:base美国的大leader
1. 项目简述
1.1 消息队列如何保证不丢消息
1.2 了解kafka吗 -> 不了解
1.3 讲一讲项目的架构
2. 手撕算法 -> 英文题干,也不是力扣 -> 类似于在01字符串中找到合乎条件的
25min左右磕磕绊绊写出
3. 聊天
4.7 hr面
评价:hr小姐姐人很好很亲切
4.8 oc
4.10 - 4.24 一周催四次,遂放弃...
4.25 offer
评价:很好的面试体验,很不好的行政效率体验...