公司动态
摩拜校招数据分析笔试题全解析:从业务思维到SQL实战
关于2018年的摩拜校招数据分析工程师笔试题时隔多年回头看这份卷子几乎可以当作共享出行行业数据分析岗位的“教科书级”样题。当年我完整刷过这套题也陪几届学弟学妹复盘过一个很直观的感受是它不考死记硬背的公式也不考偏题怪题而是把业务理解、数据思维、工程能力三件事揉在一起考。换句话说它筛选的不是“会跑SQL的人”而是“能用数据解决业务问题的人”。这篇文章我会从考察范围、题型设计、答题思路、备赛方法几个维度拆解这份试卷同时结合我自己的踩坑经验聊聊这类笔试真正想选拔什么样的人。无论你是正在准备校招还是想转行做数据分析这份拆解应该都比单纯搜“面经”更有参考价值。1. 一场校招笔试背后的业务野心为什么共享出行最看重数据分析1.1 摩拜数据人的战场从单车上万到智能调度2018年的摩拜正处在共享单车大战最焦灼的阶段。那时ofo和摩拜在城市投放量上都冲到了千万级但表面上比拼的是谁的车多暗地里较量的其实是调度效率、使用频次、用户留存这些数据指标。一辆单车从早高峰的地铁口被骑到写字楼如果没人管它就会一直停在那边直到下一个早高峰。这个“潮汐效应”是整个共享单车行业最头疼的问题而解决它唯一可靠的办法就是数据分析——预测哪里会缺车、哪里会淤积然后提前调度。所以摩拜的数据分析师本质上干的不是“出报表”的活而是用数据指导车辆投放、定价策略、用户增长、运营活动。笔试自然也跟着这个逻辑来设计考的不是统计学教材上的抽象题目而是非常具体的业务场景——比如某区域订单量突然下降你怎么排查某个地铁站的车辆淤积你怎么分析原因这些题目背后是共享单车业务对数据分析师“快速定位问题、给出可执行建议”的硬性要求。现在回看2018年的这场校招它其实释放了一个很重要的信号数据岗位在校招中的定位已经从“支持角色”变成了“业务驱动角色”。笔试的目的不仅是筛掉技术不过关的人更是筛掉那些只会“跑数”、看不懂业务的人。1.2 笔试考题结构四类题型的真实用意根据当年的笔试反馈和我在行业内收集到的信息摩拜2018校招数据分析工程师笔试整体分为四大块业务场景分析、SQL与数据处理、统计与机器学习基础、逻辑推理与开放题。这个结构在当时算比较标准的但每一类的出题角度都带着共享出行行业的烙印。题型常见考察点摩拜这类公司想看到什么业务场景分析指标下降归因、用户分群、调度问题、活动效果评估能否把业务问题转化为数据问题再转化为可执行动作SQL与数据处理复杂查询、留存计算、去重统计、窗口函数能否高效地从海量订单数据中提取有效信息统计与机器学习基础AB实验、显著性检验、回归/分类模型理解是否具备科学决策的思维而不是拍脑袋逻辑推理与开放题估算题、方案设计、指标定义结构化思考能力、业务sense、沟通表达逻辑这四类题型不是孤立存在的。举例来说业务场景题如果你只有分析框架但不会用SQL验证那结论就落不了地如果SQL很熟练但看不懂业务指标那写出来的SQL也大概率取错数。所以整张卷子本质上是在模拟一个真实的数据分析师工作流接到业务问题 → 拆解成数据问题 → 取数验证 → 得出结论 → 推动落地。我记得当年身边有同学考完出来第一句话就是“题目不难但答完心里没底”这种感觉很真实。因为每道题都没有标准答案你写出来的分析框架、你定义的指标口径、你给出的业务建议都在暴露你的思维层次。这也是校招笔试和平时考试最大的区别。2. 业务场景题考的不是答案是拆解问题的能力2.1 假设性业务问题的答题框架目标拆解和指标选取业务场景题在整张卷子里占比最大也是区分度最高的一部分。典型问法比如“假设某城市某区域的摩拜订单量连续两周下降你会从哪些角度分析原因”这类题难吗不难。任何上过数据分析课的人都能写出“从内部因素和外部因素两个维度分析”这种套话。但要在笔试中拿高分你需要展示的是完整的拆解逻辑和可落地的分析步骤。我建议的回答结构分三步。第一步明确业务目标。订单量下降我们要分析到什么程度算“分析完了”是定位到原因给出建议还是直接给出调度方案根据问题的上下文你要先定义清楚交付物。第二步拆解指标。订单量 活跃用户数 × 人均骑行次数。活跃用户还可以从新用户和老用户两个角度细分人均骑行次数则和使用场景、天气、竞品活动等因素相关。这种一层层往下拆的做法在面试官眼里就是“数据思维”的体现。第三步列出数据需求和验证方法。比如订单明细表、用户注册表、车辆分布表、天气数据、竞品动态等哪张表能验证哪个假设一一对应。有一个细节很容易被忽略答题时最好明确给出“优先级”。现实中数据分析师不可能一次验证所有假设所以你要说明先看哪个指标、为什么先看它。我当年吃过一个亏把所有可能原因都罗列了一遍但面试官追问“你第一步会查什么”时我被问住了。后来才明白面试官要的不是“全面的分析”而是“聚焦的判断力”。2.2 从“怎么分析”到“怎么落地”让分析报告变成可执行决策业务场景题的第二层考核是看你能不能把分析结果转化成业务动作。很多同学写到“建议加强运营活动”就停了这个颗粒度太粗。以“某区域订单量下降”为例如果你发现原因是该区域晚高峰车辆供给严重不足那你的建议不应该只是“增加车辆”而应该是在半径500米内筛选出车辆淤积点计算从淤积点到需求点的调度距离结合历史订单数据预测未来一周每天18:00-21:00的需求缺口给出调度车辆数量、调度时间窗口、调度路径建议同步调整该区域的定价策略比如短时骑行优惠平滑需求曲线。这就是“可执行”和“正确的废话”之间的区别。笔试评分的时候面试官看得非常细——你有没有用到该业务特有的数据维度有没有考虑成本约束有没有给出验证效果的方法这些都是加分项。我记得当时还考过一道和“车辆投放”相关的题目给定一个城市的网格数据、人口密度、地铁站点位置、历史骑行订单让你设计一套投放策略。这类题看起来像算法题但其实考察的是你的目标函数定义能力——你是以订单量最大化为目标还是以调度成本最低为目标不同的目标投放逻辑完全不同。如果能在答案里把这个“目标函数选择”的过程写清楚就已经超过了大多数人。3. 数据基础与工具能力SQL和Python考察的细节3.1 SQL题目比想象中复杂窗口函数、去重、留存计算摩拜笔试的SQL部分跟“给一张订单表让你select几行”完全不是一回事。它通常会给你订单表、用户表、车辆表、骑行记录表等多张表让你完成几类任务数据去重、留存率计算、TopN查询、连续骑行天数统计等。这些任务本身不超纲但需要的SQL技能是实打实的——窗口函数、子查询、临时表、join的优化一样都不能少。举个例子有一类高频题是“计算每个城市每天的骑行用户留存率”。留存率的口径要自己定义假设某用户在某城市第一天骑行了第二天还骑行的算次日留存那么你需要先找出每个用户每个城市的第一天骑行日期再和后续的骑行记录匹配。这个逻辑用SQL写出来至少需要三层嵌套CTE先找首日再join所有骑行记录最后按城市和日期做聚合。很多同学基础不牢写到一半就乱了。再比如“找出每个地铁站周边500米范围内骑行距离最远的Top10订单”这里涉及空间范围关联和排名。虽然不会要求你写专业的GIS函数但你要知道怎么用经纬度近似计算距离怎么用窗口函数做分组排序。这些都是典型的海量位置数据场景下的SQL问题。我当时准备SQL部分的一个经验是不要只看理论要把每类题型在本地数据库或在线SQL平台上手敲一遍。纸上写SQL和实际运行差很多——你写出来的语法可能没错但跑出来的结果对不对、性能怎么样只有跑了才知道。3.2 Python/统计/机器学习基础考的是理解而非背公式Python部分通常不会让你手写一个完整的机器学习模型但会考察Pandas数据处理分组聚合、缺失值处理、merge、基础的数据可视化思路、简单的数据探索流程。比如给你一份骑行时长数据让你用Python描述它的分布特征、异常值处理方案、影响因素初探。这类题本质上是在模拟真实的数据分析工作流拿到数据 → 清洗 → EDA → 建模或统计验证。统计部分的重头戏是AB实验。共享单车行业做实验的场景非常多改版App、调整定价、投放活动、改变调度策略都需要AB测试来量化效果。笔试里常考这些点如何设计实验分组样本量怎么确定显著性水平怎么选实验结果怎么解读我记得有一道题是给出两组用户的骑行时长数据让你判断新版定价是否显著提高了骑行时长。这题你需要写清楚先做方差齐性检验再选t检验或非参数检验最后从业务角度解释p值并补充说明可能存在的辛普森悖论。机器学习基础考得不算深常见的有逻辑回归和线性回归的区别、决策树过拟合怎么办、随机森林为什么能减少过拟合、K-Means怎么选K值。注意这些题答的时候一定要结合业务讲比如“K-Means用于用户分群你会选择哪些特征怎么验证分群效果”如果你只说算法原理分数会低一截。4. 数据分析方法论常见题型的思考模板4.1 指标体系题如何定义活跃、留存、流失和北极星指标摩拜这套笔试卷的另一个高分区是“指标体系设计”典型问法包括给摩拜定义“活跃用户”怎么定义才合理留存、流失怎么算北极星指标选什么这些题看起来开放但背后有非常清晰的方法论。以“活跃用户”为例如果你只写“一个月骑行一次就算活跃”那基本等于没答。好的答案应该体现出你对业务的理解活跃的定义要区分用户角色——通勤用户工作日高频、休闲用户周末偶发、尝鲜用户注册后骑过一两次。所以更合理的做法是分层定义比如“近7天骑行≥3次”是核心活跃“近7天骑行1次”是边缘活跃“近30天未骑行”是即将流失。一个简单的阈值背后是对用户行为的深度观察。北极星指标这种“互联网黑话”很多同学听过但放在摩拜这个场景里怎么选日订单量可以但太粗日活跃用户数可以但偏用户侧更精准的可能是“日均骑行次数/可用车辆数”——这代表车辆的周转效率它同时反映了供给端和需求端的健康状况直接和公司的核心竞争壁垒挂钩。能写到这一层面试官才会觉得你是真的理解共享出行的商业模式。指标口径的另一个关键是“可拆解性”。北极星指标要能向下拆解成团队可执行的过程指标。日报表、周报表里放哪些过程指标哪些指标可以下钻到城市、区域、网格这些细节也要在答案里体现它说明你考虑过指标落地过程中的工程问题。4.2 逻辑推理与场景设计题从问题倒推数据需求开放题部分最常出现的两类题一类是估算题比如“估算北京地铁早高峰需要多少辆共享单车”一类是场景设计题比如“如果让你设计一个‘智能推荐停车点’的功能你怎么用数据实现”。估算题考察的是“把大问题拆成小问题”的能力。北京早高峰地铁骑行需求量可以拆成地铁早高峰客流量 × 出站后步行距离超过阈值比如1公里的比例 × 其中愿意骑共享单车的比例 × 早高峰时段的集中系数。每一步的假设都要给出理由比如为什么取10%而不是50%。结果不重要重要的是估算链条是否完整、每步假设是否合理。场景设计题更考验综合能力。智能推荐停车点本质上是一个供需匹配问题需求端要预测某个点在某个时间段的骑行需求量供给端要了解当前车辆分布和可调度车辆约束条件是调度成本和停车区域容量。你需要把这个问题拆成数据采集哪些数据埋点、数据处理实时计算还是离线计算、算法模型预测模型用什么特征、产品交互用户在哪个环节收到推荐几个模块然后逐个说明。这类题没有标准答案但答题的逻辑链条是否完整、能否考虑到边界条件和异常情况面试官一眼就能看出来。我当时的经验是先写出核心流程再补“如果……怎么办”的边界处理最后用具体例子收尾。这样既有框架又有细节读起来不会觉得是空洞的废话。5. 备考策略与踩坑复盘从真题心态到实战演练5.1 常见误区背题、堆模型、忽视业务理解这几年我接触过不少准备数据分析校招的同学发现有几个普遍误区在摩拜这类笔试题里会直接暴露。第一个误区是“背面经”。面经里出现过的题确实可能再考但如果你不理解背后的分析框架换一个数据场景就露馅。比如面经里写过“订单量下降怎么分析”你照着背了一遍结果题目改成“车辆周转率下降”你还在套“外部因素、内部因素”的模板就显得很生硬。正确做法是把每一个常见业务问题都抽象成“分析模板”指标拆解模板、归因分析模板、实验设计模板、预测建模模板再用不同业务场景去套。第二个误区是“过度堆模型”。有的同学一看到用户分群就想上K-Means、DBSCAN一看预测就想上XGBoost但忽略了一个基本事实笔试考的是你的分析思维不是算法炫技。把简单的方法用得恰到好处比把复杂方法用得似是而非要强得多。我在批改模拟卷时经常看到“我用LSTM预测骑行量”这种答案问题是连LSTM的输入输出都描述不清楚这种答案只会暴露基本功不扎实。第三个误区是“只分析不落地”。数据分析的终极价值是驱动决策。你分析了半天最后建议写一句“建议提高运营效率”等于没写。好的建议一定要有具体的执行策略、成本估算、预期收益、效果验证方案。这四个要素哪怕只写两个也比空话强。5.2 针对摩拜这类公司的备考路线建议如果你正在准备共享出行、本地生活、O2O这类公司的数据分析工程师岗位我的建议是按照“三步走”路线来准备。第一步先把业务理解补上。去下载App每天使用记录自己在什么场景下会打开它、什么因素会促进或阻碍使用。把你当成一个真实用户去感受再反过来想如果我是分析师我该看哪些数据来理解这个用户的每一次操作这一步不需要任何技术但对后续所有环节帮助巨大。第二步把SQL练到“条件反射”的程度。窗口函数、case when、多表join、子查询、日期处理函数这些必须随手能写。推荐一个笨办法把LeetCode数据库题库刷两遍或者找一份开源的用户订单数据集自己给自己出20道业务问题然后用SQL实现。等你做到看到“留存”“复购”“TopN”这些词就能条件反射地写出查询框架基本就过关了。第三步做至少两个完整的业务分析项目。项目不一定要多高级但必须完整走一遍“定义问题 → 数据获取与清洗 → 探索性分析 → 建模或统计验证 → 结论与建议”的流程并且把过程写成文档。面试官在笔试之外最看重的就是这种“你真正做过”的证据。用公开数据集比如纽约的Citi Bike骑行数据做一个“城市骑行需求分析”的项目比任何理论备考都更能证明你的能力。5.3 笔试卷之外的加分项最后聊一个笔试之外但经常被忽略的点答题的格式和可读性。摩拜这类笔试通常是线上答题时间有限所以很多人直接堆文字想到哪写到哪。但你要站在阅卷人的角度想他一天要看几百份卷子最怕看到一大团没有结构的文字。所以哪怕是开放题也一定要用“总-分-总”或“结论先行”的结构分点列出你的思路关键指标单独写清楚口径代码部分加上注释。格式清晰本身就是一种沟通能力的证明这项能力在实际工作中比大多数技术点都重要。还有一个小技巧遇到不会的题不要空着。把你能想到的拆解思路写出来能写几步算几步。阅卷人不会因为你没给出完整答案就给你零分他更在意的是你在面对不确定问题时的思考过程。很多笔试的评分标准里“部分正确”的权重远高于“完整但错误”所以大胆写别怕错。我个人对这套卷子印象最深的一道题是让考生设计一个“红包补贴策略”来提升新用户首骑转化率。这道题表面是运营策略但真正想考的是你懂不懂成本约束你会不会用AB实验验证效果你能不能预估补贴拉来的用户长期价值这些能力恰恰是数据分析师从“取数工具人”进阶到“业务参谋”的分水岭。如果你现在复习时就能把这种题目拆解得很透彻那校招笔试这一关大概率是拦不住你的。