〇、前言
以终为始来看,一场面试的最好状态就是候选人始终引导着面试官,不断展示自己的优点。专业深广度、软素质能力的扎实、工作态度的积极主动。
最好的抓手就是项目介绍,下面聊聊如何介绍项目经历。
一、数仓开发岗有哪些项目是面试官想听到的?
数据仓库项目通常有三类,数据服务、数据建模、数据治理。让我们举些例子。
数据服务:丽人场景标签画像数据建设,LBS专题专项分析数据建设,产品专项分析数据建设,实时链路建设等等;
数据建模:风险数据域建设,财务数据集市建设,获客主题建设等;
数据治理:指标中心建设,数据资产中心建设,数据质量建设等等。
这三类工作有递进螺旋的关系,会发生在数据团队工作中的不同阶段。即数据服务(业务提出的需求)->数据建模(通过业务需求提炼数据模型)->数据治理(处理数仓模型长期运营过程中的问题)。
另外从招聘市场的情况,这几类业务背景的数据工程师是比较好找工作的,项目经历可以往这些方向上去靠。电商(…一堆…)、风控(互金信贷、社区内容)、财务(集团财会、国际财会)、金融(券商、银行)。
二、不打无准备之仗-做好项目介绍的准备工作
1.请按STAR模型去表述简历项目。
《金字塔原理》说,信息传递者表达内容的第一步,是构建和信息接收者的共识,接着说明冲突,并逐层展开自己的观点。在面试中做项目介绍也是一样的,简历内容是面试官接触候选人信息传递的第一步,需要让信息接收者清晰、省力地获取到项目的概况。这里最好按最经典的表达框架:S(situation)T(target)A(action)R(result)去书写。
2.提前准备项目细节答案。
1)展开说说、透彻理解。面试官看完简历上项目后会了解概况。但还想了解得更深入一些,例如项目引入背景是xx主题域数据建设已久、支持效率低。但面试官会疑惑具体是怎么低的呢?为什么之前的负责人没有高优去处理这个问题?等等。
2)项目总结、能力迁移。同时简历中Action通常是时间罗列的,第一步、第二步..或者是空间罗列的,解决问题需要分A方面、B方面、C方面;事情解决起来没有起伏,不符合实际世界的规律。
这时候信息接收者就会有疑问。这个事情的难点在哪里?在事前、事中、事后都有哪些思考?遇到问题是通过什么方法去解决的?
有没有参考前人的方法、不能直接复用前人实践的话,有没有根据理论结合实践自己想出一套方案,理论是不是用一套就行,会不会有多种情况还需要多重方案结合,横向结合还是纵向结合等等。
这些问题都是需要提前思考并组织语言的,否则现场回答的效果可能会差强人意,体现不出候选人的能力。
3.再多准备介绍一到两个项目。
例如做离线数仓可以讲讲实时能力、平台能力、分析与挖掘能力,或者其他业务背景下的能力。以备候选人向面试官进一步展现技术广度。
三、案例分享
这里找了数据服务、数据建模、数据治理三种类型的项目,按STAR形式来组织,供大家参考。
1.数据服务- XC联名信用卡用户增长业务数据支持
信用卡业务需要拦截风险高的申请以减少坏账损失,并尽可能准入中风险但有分期诉求的申请以提高营收。
因此需要使用XC数据融合银行内资质信用数据联合审批控制坏账,同时提高贷前贷中批核率。
1)引入年轻高活、客户收入、负债水平、自营额度、场景行为等XC信息形成KYC(Know Your Customer)数据变量池,支持迭代审批策略,优化进件客群结构;
2)同时建设资产及风险经营,授信拒绝原因,反欺诈监控等报表对风险经营情况进行监控;
3)并建设批核率、反欺诈查询指标实时监控;在风控策略部署前提供数据分析,部署中提供预警监控,部署后提供效果回收的闭环数据解决方案。
使用XC信息审批的客户申请件占比达90%,同时在整体坏账率下降3%的过程中减少风险团队人力20人天/月。
2.数据建模- 积分主题域重构
XC积分是向消费者提供的一种权益积分,通过联名信用卡消费发放给用户,用户可用于直接抵扣现金、兑换现金券、会员等类型的权益。由于业务快速转向,积分数据一直处于 CasebyCase 烟囱式的建设状态,出现了多链路数据不一致、关键维度硬编码、应用层生产逻辑复杂等问题。
因此需要通过数仓重构提高数据质量、降低生产成本。
1)按业务过程建设明细层,设计发放、回收、账户管理、用户浏览、消耗、退款、过期等7个模型复刻业务流程。
2)集成层按分析主体设计零花全生命周期、客户行为画像、频道访问漏斗、营销活动参与漏斗等4个模型。
重构后收益为不一致导致的结算回款延迟从6次/月降至0次/月,结算数据需求开发时间从5人天/需求降至2人天/需求。依赖 ODS 层的37条引用关系降至8条,合计降低存储资源79.5T,计算资源140CU /月。
3.数据治理- 指标治理
随着XC联名卡业务的探索发展,核心指标体系已相对稳定,但指标缺乏统一的管理及运营,在指标定义、生产、使用各环节碎片化,依赖共享文档口口相传。
需要制定一套指标规范,系统化的进行指标增删改全生命流程化管理,保障指标的一致性。
1)使用指标治理工具DataWorks,建立了一套从需求提出、指标定义、指标管理到指标运营的指标管理机制。
2)并通过系统化管理指标的录入、变更、下线流程,保证接入管理的不规范指标数为0,指标口径由共享文档变成系统统一维护。
项目目标将XC123个核心指标进入系统管理。并统一数据应用出口,通过系统化机制将"同名不同义"、"同义不同名"问题数减少到0。
四、不同情况的不同呈现形式
虽然是同样的项目内容,但不同的面试时段也应当采用不同的呈现形式。
1.一二三轮面试差异
如第一二轮面试一般是小组长(虚线leader)或主管面(实线leader),第三轮是部门长(+2/+3)或总监面。
1)前者需要体现出技术细节,数据建模中业务刻画需要哪些字段、主题分析中有哪些分析模型需要那些指标、主体分析中dws层有哪些维度,非常明确到告诉面试官,候选人做了什么样的事情,实打实地解决了哪几类问题。
2)而后者更注重项目的逻辑链,什么样的背景下出了什么问题?又通过哪几类手段逐步解决问题?项目复杂度在哪里(数据量级大、数据服务方多诉求不一、业务流转模块节点非常多等等)?难点是什么(数据重构时多链路复用、数据治理时数据标准边界问题难覆盖、数据服务时指标繁杂等等)?承担的角色是什么(主R还要体现项目把控、协同沟通等等)?
2.面试前中后20分钟差异
另外同一场面试的前中后20分钟,不同阶段项目介绍也有侧重。
1)前20分钟的第一个项目,最好能体现能力的深度,这时候就挑自己最熟悉、最得意的项目。把项目开展的逻辑和解决方案的细节都展现出来。
2)中间20分钟介绍第二个项目,挑面试官感兴趣的项目讲。根据职位JD确认面试官感兴趣的项目类型,一般业务BP部门喜欢听数据服务,多讲指标理解和业务过程中的数据支持;数据中台更喜欢听数据建模和数据治理。
3)第三个项目,面试官一般是想要了解候选人技能或经历的广度,给出一个逻辑链通畅的项目就行,让面试官知道候选人也能应对不太熟悉的技术场景。
五、后记
一场面试对于面试官和候选人双方最舒服的状态,就是候选人能把握住面试官注意力的焦点,引导整场面试。而项目介绍就是有一名观众聚精会神听你吹嘘过往成绩的过程,是最容易和面试官达成共鸣的环节。所以请尽情展示自己娴熟的技能、健壮的精气神吧!
欢迎微信公众号搜索 Ethan扯数据 获取更多面试内容。