面试经历 – 快手测试开发工程师校招
于 2024/8/26 16:00 进行的为时 60 分钟的面试,为快手商业化部门的测试开发岗位。面试官基本是把我简历上写到的东西都问了一遭,但每个都问的不深,能答上来个八九成。我没想到的是反问阶段完了以后还有一个“反反问”阶段,面试官问了我一些对岗位的要求问题。
以下是面经:
- (面试官介绍本次面试流程)
- 自我介绍
- 结合你主要的技术栈介绍一下你的项目经历以及遇到的难点
- (对于 NeraBBS 轻论坛)你的单元测试是怎么做的?你们的测试主要用的是什么框架?看到你写道排查项目性能瓶颈,能举个具体的例子吗?你的压测是怎么做的?这个论坛你主要是做的后端吗?(不是)那你的前端是用什么写的?
- (对于 OI-Wiki 划词评论系统)这个项目的整体技术栈是什么?你写到通过 CI/CD 系统自动修正代码风格,这个可以具体讲一下吗?(后续还讲了使用 CI/CD 刷数据的功能)
- (对于 rCore 操作系统)这个操作系统是使用 rust 这个语言开发的吗?看到你写到这个系统支持系统级的并发锁以及死锁检测,可以介绍一下吗?
- 可以介绍一下你在蔚来这部分测试的实习经历吗,比如整个测试的流程是什么样?有参与上线流程吗?可以说一下你这边的全链路测试主要是做了什么吗?你们接口压测的指标大概会关注什么?(QPS,并发数)你们是在哪个环境做的这个压测?并发数指标大概是多少?说说自动化测试框架?你的自动化测试主要是覆盖哪部分?
- 讲讲在百度的测试工作?你在百度也负责编写了一部分自动化测试用例吗?
- 讲一下 Java 的垃圾处理机制?
- 能简单介绍一下 MySQL 的事务吗?
- 讲一下 Redis 常用的缓存方案?(这个没 get 到他问的八股,所以没说出来,只说了一下延迟双删)
- 看到你用过 kafka,你用 kafka 主要是用来做什么?了解消息的保序吗,应该如何做?(不太懂,我只说了 kafka 自身保证消息顺序,业务也可以做一下判断)
- 看你 Linux 系统也用过,
grep
和sed
都用过吗(只用过grep
),用grep
指令读取某一个日志文件中从某一时间到另一时间的所有包含 keyword 的日志应该怎么做(这里我用了正则表达式模式来做) - 简单讲一下 TCP 的三次握手?
- 看你经常用 git,能说一下 git rebase 主要是用来干什么的吗?
- SQL 题:给定学生表和课程表,请以
class_id
为条件 JOIN 这个表 - 代码题:买卖股票的最佳时机(Leetcode 121)
- 反问
- 反反问:你目前有在面试中或已经收到答复的 offer 吗?你对工作岗位有什么心理预期吗,比如 base?