Appearance
22 级 快手数据库开发
0.背景
22级计科班,快手数据库开发。
本文分享基于SDUCST就业交流分享会讲座内容,感兴趣的同学可以加入就业群获取本次讲座的录播链接:

主要围绕以下几个主题分享:
- 本科阶段,竞赛有用吗?
- 如何快速找到自己想做的方向?
- 关于数据库开发:内核侧与 DBA
- 一些杂谈
- 个人经历
- 推荐阅读
1.本科阶段,竞赛有用吗?
结论:毫无异议,是有用的。
竞赛对提升个人能力、积累实战经验的帮助都很大,是本科生涯里非常宝贵的一段经历。但同时也要注意:
- 硬核竞赛往往需要大量时间精力投入,可能动辄几个月甚至提前一年准备
- 不确定性很大,在竞争激烈的情况下,哪怕很努力也不一定能取得很理想的成绩
- 这种情况下,多刷一段实习、把项目打磨得更扎实,收益往往更直接
竞赛也可以项目化。部分工程向竞赛的产出,往往稍作沉淀就是一个很优秀的项目。当时,赛后要记得做笔记总结、复盘过程,同时量化每个 idea 的提升(做了什么、优化了什么、指标/规模/效果如何),方便后续整理简历
结合我个人经历,比较建议关注的竞赛:
- 工程类竞赛:面向真实业务场景,上手难度高但收益大
- 华为软件挑战精英赛(软挑)
- OceanBase 数据库大赛
- 全国大学生计算机系统能力大赛
- 算法类竞赛:需要持之以恒的练习,投入很大,回报不确定
- XCPC(ICPC/CCPC 系列)
- 百度之星
- 非保研不太推荐打的(个人看法)
- 蓝桥杯(纯坑钱比赛,而且没有工信部盖章了,强烈建议避雷)
- 数模、计算机设计大赛、互联网+、大创等(对互联网技术岗就业的帮助很小)
2.如何快速找到自己想做的方向?
2.1 对于大一/大二的同学
请多做尝试。你们时间很多,试错成本很低,而且未必只有就业一条路:今天觉得就业很好,明天说不定就想读研了。只有广泛接触技术栈,才能感觉出自己更想做什么。
2.2 对于大三决定就业的同学
如果决定就业,在大三上就该准备起来了:项目、实习、简历、面试都得同步推进。可以先根据讲座/资料了解各个岗位,选择几个感兴趣的深入学习;有问题也可以去 SDUCS 就业交流群多问多交流。
3.关于数据库开发:内核侧与 DBA
数据库开发我大致分成两类:内核侧 与 DBA(不同公司/部门命名略有差异)。
3.1 内核侧
内核侧就是数据库系统的核心模块研发,包括但不限于:存储引擎、查询优化、事务处理等关键组件,核心工作离不开系统设计与性能调优。
学习路线我个人感觉相对明确,常见的项目/公开课一般也离不开这几套(CMU 15-445、MiniOB、MIT 6.824、TinyKV 等)。个人建议顺序:
CMU 15-445-> 2.MiniOB-> 3.OceanBase决赛项目 /MIT 6.824-> 4.TinyKV
注意:自己做和直接看现成源码的收益完全不一样。如果想切实提高水平,强烈建议踏踏实实花时间做 lab。
岗位现状我个人感觉是:
- 岗位数量相对少(更多集中在少数大厂/数据库厂商),入门门槛较高,相对稳定性也高一些
- 因为学习路线相对明确,竞争压力与上手难度都偏大
- 数据库作为互联网基础设施,受 AI 浪潮影响,也有更深层的架构融合与演进趋势
3.2 DBA
DBA(Database Administrator)就是数据库管理员。它和运维有交集,但由于专精数据库领域,技术纵深和复杂度相对更大。
岗位现状我个人感觉:
- 这个岗位在向“测开/开发”方向延伸,如部分企业校招 DBA 走的是后端开发通道
- 大厂热点主要是高可用架构、容灾方案,也在推动 AI 赋能自动化运维(比如云厂的一些数据库自治服务)
- 岗位数量有限,很多厂商直接上云,DBA 更集中于自建数据库集群的大厂;同时大厂更倾向有经验候选人,流动性相对低
- 无论内核还是 DBA,基本都会有 oncall/轮值去应对线上突发故障;相对纯开发岗位,日常开发压力可能小一些,但运维应急压力更突出
- 用我 mentor 的话来说,DBA 每天都在干“刀尖舔血的活”(指高危线上操作),需要一定的心理素质
4.一些杂谈
4.1 关于 vibe code / AI coding
AI 发展确实很快,各种 agent 编程工具也层出不穷。看着几行自然语言生成的项目比自己熬夜半天写的还好,有落差感很正常。
但我仍然坚持:在使用 AI coding 之前,确保自己不成为 AI 的工具——也就是不借助 AI,你也有大致思路,知道哪个部分该写什么;能看懂 AI 的代码,并在它的基础上调试修改。否则能力上限很容易固化成“AI 的能力上限”,也就很难打出差异化。
但也要注意,不过度依赖 vibe code ≠ 不用 AI。请记住:AI 是最耐心、最知无不言的新手导师,不懂就要问。
4.2 关于“底层滤镜”
我不是否定底层技术的重要性,而是不建议为其过度附加“光环”。诸如数据库内核、操作系统内核、编译器、infra 等方向,实际工作内容可能并不如很多人想象中那么理想,甚至会有不少 dirty work。
但反过来说,如果你能去掉滤镜之后仍然愿意钻研下去,即使没有取得特别好的成绩,个人能力的提升也难以估量,面试里也会有更多能聊出深度的谈资。
4.3 关于城市
城市往往是决定幸福感的第一要素,请慎重选择。
4.4 关于实习
我个人感觉提前刷一段实习是非常非常必要的:即使你不指望实习转正,实习经历对秋招也很重要;如果能转正,相当于秋招多一个保底,心态会稳很多。
但实习和课程两头跑确实会很累。我的一次极限经历是:晚上八点下班 -> 1.5 小时地铁 -> 9 小时绿皮火车卧铺 -> 1.5 小时地铁回学校,考完试再反着走一遍,确实很折磨。所以尽量提前规划时间,给自己留好缓冲。
4.5 关于面经
面经可以用小红书/牛客搜(比如“字节 后端 实习 面经”),我个人感觉挺好用,但注意规避卖课卖题广告。
5.个人经历
- 大一:懵懂无知,兴趣驱使下尝试了很多方向;刷过算法题但连实验室都进不去;写过一点前端
- 大二:初窥门径,决定本科就业;加入 ACM 实验室和 OpenLab;开始尝试竞赛并取得一些微小成绩;写小玩具上线、写博客,接触更广泛的技术栈
- 大三上:明确了后端/数据库方向;开始和同学合作写一个真正的 Web 项目(
SHARESDU,API 文档有二十多页,从 0 到 1 一边学一边写,前后接近半年时间);开始上手做CMU 15-445的 lab - 大三下:
SHARESDU上线并持续维护;软挑进入复赛(公费旅游三天,遗憾止步决赛);通过快手数据库开发暑期实习并顺利转正;实习期间打了最后一场 CCPC 退役;也和 OpenLab 的同学合作给校医院重构并上线了一个 Web - 大四上:秋招继续投递,拿到其他 offer,但最终还是选择快手(在组里实习过一段时间,对环境更知根知底,我个人感觉靠谱的 leader 有时候比几千块的月 base 更重要);之后全力备战 OceanBase,两个月高压长跑进入全国二十强,也算小小圆梦了
同时给自己的web打个广告,欢迎来玩:https://sharesdu.com/#/index
6.一些补充
- 快手实习体验:我个人感觉挺愉快的,稍微有点累;实习生也有房补,工资不算低
- 转正流程:暑期实习和日常实习转正一般都需要答辩,具体形式看部门,原则上待满 40 个自然日就可以发起流程(实际仍看部门要求)
- 基础能力:强烈建议新生装一个 WSL,在 Linux 环境下做项目开发;同时尽量熟练掌握 git 命令(
vscode + wsl确实很好用) - OpenLab/ACM:纳新一般在上学期;对大一大二同学来说,认真做纳新题能很快增强对抽象项目知识的理解,“师傅领进门修行看个人”,入门之后很多东西会自然打开
7.推荐阅读/资料
- WSL 安装教程:https://learn.microsoft.com/zh-cn/windows/wsl/install
- 应届生如何半年找到一份数据库内核开发的工作(知乎):https://zhuanlan.zhihu.com/p/490171772
- 认真学习完 MIT 6.824 和 CMU 15-445 可以找到相关的工作吗?(知乎问答):
- 现代编程框架是否让人离计算机原理越来越远?(知乎问答):https://www.zhihu.com/question/1964654155080660003/answer/1965442903842194396
- 为什么大部分杰出的程序员都在内心倾向于研究操作系统和编译器?(知乎问答):https://www.zhihu.com/question/48732733/answer/2850032993
hw
2026-01-09