本章目标:把简历、项目、投递、面试复盘串成一套可执行的流程,不绑定具体日期。 前置知识:无。可以边学边投,不必等全部学完。
1. 准备什么
目标:拿到一段数据相关实习,方向包括数据开发、数仓、ETL、数据分析、BI。
三条原则:
- 投得早大于学得全。 看到匹配的岗位就投,不等到“全部学完”。
- 能讲大于学过。 合上电脑能讲清楚,才算学会。
- 砍得狠大于抓得多。 时间不够时砍任务,不砍投递。
目标分三档,同时投:
| 档次 | 岗位 | 策略 |
|---|---|---|
| 冲刺 | 大厂数据开发、大数据开发日常实习 | 内推加项目,投了不亏 |
| 主攻 | 中厂、垂类公司的数仓、ETL、数据开发 | 主要精力 |
| 保底 | 数据分析、BI、数据运营、数据产品 | 拿到就接,先上车 |
注意:第一段实习是跳板。它的作用是在简历上多一段真实经历,为后面的暑期实习和校招做准备。先上车,比上什么车重要。
2. 准备顺序
不按周排,按“能力是否过关”推进。前一步的验收没完成,不要急着进下一步。
| 顺序 | 学什么 | 学完能做什么 |
|---|---|---|
| 1 | 环境、基础查询 | 跑通 check_data.py,独立写 10 条基础 SQL |
| 2 | 聚合与 JOIN | 解释 JOIN 膨胀,完成 8 道聚合/JOIN 题 |
| 3 | 窗口函数与数仓 | 手写窗口题,白板画出四层架构,讲清拉链表 |
| 4 | 跑通项目 | 讲清 112,650 到 112,101、98,207 到 98,199 的差额 |
| 5 | 项目扩展与简历 | 新增 1 个自己的分析指标或 1 张 ADS 表,写报告初稿,简历能直接投 |
| 6 | GitHub 与项目讲述 | README 能复现,3 分钟脱稿讲项目 |
| 7 | Hive 与分区 | 写动态分区 DDL,解释分区裁剪 |
| 8 | Spark | 讲清 shuffle、数据倾斜、广播 join |
| 9 | Kafka、Flink 与场景题 | 每个组件能讲 2 分钟,不堆名词 |
| 10 | 面试复盘与弱项补齐 | 高频题能答,卡壳题 48 小时内补上 |
| 11 | 收尾 | 确认 offer,或明确下一轮投递计划 |
2.1 什么时候可以开始投
同时满足这三条就可以投,不用等全部学完:
1. 项目能在本机一键跑通,你能解释每层在做什么
2. 简历上项目 bullet 都有数字
3. 能 3 分钟讲清项目架构、难点、结果、不足
剩下的 Hive、Spark、Kafka、Flink,可以边投边补。面试问到了,记下来再学,比闷头学完再投效率高。
注意:准备是一个滚动过程。不要设“学完那天”,要设“可以开始投的那天”。
3. 每天怎么安排
3.1 45 分钟最低版
10 分钟:复习昨天的一张表或一条 SQL
25 分钟:学一个小节,立刻敲一遍,不复制粘贴
10 分钟:合上教程,自测一题,讲给自己听
3.2 90 分钟完整版
15 分钟:读教程或面试题
45 分钟:手写 SQL / 改项目 / 刷题
20 分钟:投递、复盘或写文档
10 分钟:记录今天卡住的点
3.3 工作日与周末
| 时间 | 内容 |
|---|---|
| 工作日 | 45 到 60 分钟,主线学习或项目 |
| 周末 | 90 分钟以上,集中做项目或模拟面试 |
3.4 三条纪律
- 不复制粘贴。 看着教程敲一遍,再合上写一遍。
- 40 分钟规则。 同一个问题卡 40 分钟,停下来查资料或提问,不硬耗。
- 每次留证据。 一条 SQL、一个指标、一份投递记录,都算证据;看视频不算。
注意:每次开始前问一句:“今天做的事,是让简历更值钱,还是只是让我更舒服?”看视频、反复装环境是舒服;写出指标、投出简历是值钱。
4. 进度落后怎么调整
先判断是哪一类落后,再决定砍什么:
| 情况 | 处理 |
|---|---|
| 概念没懂 | 回看对应章节的示例,先跑通再读原理 |
| 题量没完成 | 减少题量,优先保留窗口函数和 JOIN |
| 项目卡住 | 缩小范围,先保证四层能跑通,再补扩展指标 |
| 面试临近 | 停止开新知识,只补被问倒的题 |
砍内容的顺序:
- 先砍扩展阅读和选学章节;
- 再砍 SQL 题量,从 40 道减到 30 道,保留窗口函数;
- 最后砍 PySpark 深入,项目仍用 DuckDB;
- 绝不能砍:环境、SQL 基础、项目、投递。
原则:砍任务,不砍投递。
5. 投递渠道与追踪
5.1 渠道优先级
- 内推:校友、学长学姐、社团、实验室,最有效。
- BOSS 直聘:回复快,可直接沟通。
- 实习僧、牛客:学生实习主阵地。
- 公司官网:大厂必走。
- 学校就业网、学院群、就业公众号。
5.2 公司池(按档位,不按优先级)
| 档位 | 公司 |
|---|---|
| 冲刺 | 腾讯、字节跳动(深圳)、华为、大疆、微众银行、平安科技、招商银行、富途、Shopee、SHEIN |
| 主攻 | 顺丰、货拉拉、金蝶、深信服、TCL、创维、腾讯音乐、数据服务与 SaaS 公司 |
| 保底 | 数据分析 / BI / 数据运营岗、银行与保险数据中台、外包与创业公司 |
公司名单只是起点,投递前要看当年岗位是否开放。不要只盯一家,也不要因为公司小就不投。
5.3 投递追踪表字段
| 字段 | 说明 |
|---|---|
| 公司 | 公司全称 |
| 岗位 | 数据开发 / 数仓 / ETL / 数据分析 |
| 城市 | 深圳 / 远程 / 其他 |
| 渠道 | 内推 / BOSS / 官网 / 实习僧 |
| 投递日 | 实际投出日期 |
| 状态 | 待投 / 已投 / 笔试 / 一面 / 二面 / HR / offer / 拒 |
| 面试时间 | 具体到日期和时段 |
| 结果 | 通过 / 拒绝 / 待定 |
| 下一步 | 跟进、补材料、准备某题 |
| 备注 | 岗位链接、联系人、薪资、到岗要求 |
投完当天就记录。不要靠记忆,投到 30 家以后一定乱。
5.4 投递纪律
- 保持稳定的投递节奏:每次集中投一批,投完更新追踪表。
- 20 家没回音是正常的,不内耗。
- 有面试就接,哪怕公司不理想,先练手。
- 投递后 3 到 5 天可以礼貌跟进一次,不刷屏。
- 每场面试后 24 小时内更新追踪表。
6. 面试复盘
每场面试后 30 分钟内填写,趁记忆清楚。
公司 / 岗位 / 轮次 / 日期:
面试官关注点:
问题清单:
1. SQL:
2. 项目:
3. 数仓 / 大数据:
4. 场景题:
我的表现:
- 答得好的:
- 答崩的:
- 完全不会的:
正确答案 / 更好的答法:
项目被追问的点:
自我评分(1-5):
下一步(48 小时内):
6.1 复盘示例
问题:窗口函数 ROW_NUMBER 和 RANK 的区别
表现:只说了“排名”,没说并列处理
正确答案:ROW_NUMBER 连续编号 1,2,3;RANK 并列跳号 1,1,3;
DENSE_RANK 并列不跳号 1,1,2
下一步:当天重写一遍三种排名,并找一道 TopN 题练手
6.2 复盘原则
- 只记事实,不写“我太菜了”。
- 每场面试至少提炼 1 个可复用的答法。
- 同一个问题连续两场答崩,必须停下来补。
- 面试官的问题就是最好的题库,按模块归档。
7. 常见心态问题
| 想法 | 问题 | 应对 |
|---|---|---|
| “等我学完再投” | 永远学不完,错过招聘窗口 | 达到三条投递条件就投,边投边补 |
| “投了 20 家没回音” | 实习转化率本来就低 | 继续投,优化简历和岗位匹配 |
| “被问倒了,没戏了” | 面试官在测边界,不是否定你 | 记录问题,48 小时内补上 |
| “同学已经拿 offer 了” | 比较打乱节奏 | 只看自己的准备清单 |
| “项目太简单,不敢写” | 大多数应届生没有完整项目 | 写清数字和你做的改动 |
| “课程和面试冲突” | 面试和复习抢时间 | 提前确认课表,面试尽量避开考试周 |
| “只拿到数据分析岗” | 觉得不是数据开发 | 先接,相关实习就是跳板 |
| “今天太累,明天补” | 断一天容易断一周 | 至少做 10 分钟 SQL,保持手感 |
注意:真正的风险只有一个——“等我学好再投”。60 分的项目加立刻投递,好过 90 分的项目加一直不投。
8. 练习
练习 1:排一个 45 分钟学习模板
结合自己的课表,写一个每天能稳定执行的 45 分钟学习模板,并说明每个时间段做什么。
参考答案
10 分钟:复习昨天的一张表或一条 SQL
25 分钟:学一个小节,立刻敲一遍
10 分钟:合上教程,自测一题,讲给自己听
模板要能长期执行。时间不够就压缩到 30 分钟,但“读、敲、自测”三步不要省。
练习 2:建投递追踪表
写出投递追踪表至少 8 个字段,并说明“状态”字段有哪些值。
参考答案
字段:公司、岗位、城市、渠道、投递日、状态、面试时间、结果、下一步、备注。
状态值:待投、已投、笔试、一面、二面、HR、offer、拒。
关键是一次投递一行,投完当天记录;否则投到 30 家就记不清了。
练习 3:进度落后怎么调整
你只完成了一半 SQL 题,窗口函数还没开始,项目也没跑通,但已经想开始投递。怎么调整?
参考答案
先保证投递条件:项目能跑通、简历有数字、能讲 3 分钟。
- 砍掉扩展阅读和选学章节;
- SQL 题从 40 道减到 30 道,保留窗口函数和 JOIN;
- 暂停 PySpark 深入,项目仍用 DuckDB;
- 先跑通项目,再补窗口函数;
- 投递不推迟。
原则:砍任务,不砍投递。
9. 面试延伸
面试题:你的学习计划是什么?
是什么:面试官想看你是否有节奏、能否持续投入,不是要听“努力学习”。
解决什么问题:用具体模块和交付物回答,证明你能在压力下推进。
我的实操边界:我按模块推进,先打 SQL 和数仓基础,再跑通四层数仓项目,之后边投递边补 Hive、Spark 和实时组件;目前完成了项目、简历和第一轮投递。
追问:如果实习和课程冲突怎么办?答:提前确认课表,优先保证考试,实习时间与团队沟通,必要时调整每周到岗天数。
面试题:你为什么想做数据开发?
是什么:面试官想听动机和匹配度,不想听“数据很火”。
解决什么问题:把你的经历、能力和岗位职责连起来,说明你不是海投。
我的实操边界:我做了一个完整的电商数仓项目,从清洗到指标到对账都跑过;我喜欢这种“把脏数据变成可信指标”的工作,也愿意补大数据组件和调度。
追问:数据开发很枯燥,你能接受吗?答:能。项目里大量时间在对账和排查差异,我享受把数字对上的过程,也能接受重复性工作。
10. 本章验收
- 能按准备顺序说出每一步的产出和验收标准。
- 能说出“达到什么条件就可以开始投递”。
- 能排出自己每天 45 或 90 分钟的固定学习模板。
- 建立投递追踪表,字段齐全,状态值清楚。
- 能说出至少 15 家目标公司,并分成三档。
- 完成一次面试复盘,写出落后时的砍内容顺序。
- 能说出 3 个常见心态问题及应对方式。
- 能解释为什么不要“等学完再投”。
准备到这里结束。回到项目总览检查交付物:项目总览。