数据研发“新人”如何快速落地?
作者:佳二
一、前言
工作久了,免不了转岗或跳槽,刚好最近完成了自校招加入阿里以来的第一次转岗(菜鸟->蚂蚁),过程中因为是要离职再入职,因此也算是一次跳槽了。在此,想以自己的本职工作角色“数据研发”出发,和大家分享下自己转岗落地学习过程中的一些感悟,以及落地过程中的一些浅薄经验。
相信不论是谁,换到一个新环境,一开始都会有些许不适,并且同时还要面临如何在新环境中快速落地的挑战。本文将以“如何快速落地”、“快速适应新环境”为出发点,探讨数据研发“新人”如何快速了解公司业务、领域模型和业务系统,然后快速高效的推进相关工作,赢得合作伙伴的信任和支持。
当我们来到一个新的环境中,如何快速适应并融入这个新的大家庭,是一件非常重要的事情。对于数据研发新人来说,快速落地是一个至关重要的过程,这个过程中,不仅仅要解决研发难题、提供业务支持,也要快速了解公司文化,与同事建立良好关系,获得工作的满足感和成就感。下面将围绕业务、数据、系统三个切面展开探索。
二、先说结论:拆解问题,体系化提升认知
首先,作为一名数据研发同学,日常工作大都围绕数据展开。数据从业务系统中来,到业务中去,并反哺给业务系统,数据研发在其中起着承上启下的作用。因此对业务、领域数据、业务系统,我们都得有所了解。因此我们需要构建起全局观,从而捋清各层关系。构建起全局观,对业务、数据、系统都能有个初步的全局性了解,将有助于我们高效推进相关工作,实现和业务、技术的高质量对话,避免把大部分时间花在反复对齐上。
因此,作为数据研发的我们需要关注三个核心面的认知提升:业务、数据、系统。而如何推进这三方面的认知提升,则需要我们在学习过程中不断思考总结,灵活应用相关的方法论和工具,最重要的是能形成自己的框架,并且能快速迁移到新领域。这几点的关系如下图。
底层核心能力还是在于思考总结、善用方法论和工具,然后用结构化的思维去思考问题,形成自己了解新事物、新领域的学习框架,快速拆解问题,形成体系化认知。比如本文就是用标准的「金字塔原理」进行问题的拆解和论点及论据的叙述。
在此之上,需要深入了解我们的核心角色和工作职责,然后拆解我们的工作,分层分域地去突破。以数据研发角色为例,业务、数据和系统三者既是公司生产活动流程上涉及到的几个重要角色,也是工作中我们需要和学习的三个切面,三者密不可分。
但作为数据研发的我们,在学习这三者时的方法和侧重点是有不同的。
具体来说:
业务层面:前期重点在于快速了解,可以通过看组织架构、了解业务核心能力、核心场景等方法,让数据研发工作落地更快。
数据层面:数据工作强相关,重点学习。通过学习数据域划分、各方常用数据表、数据白皮书等,让数据研发工作推进更好。
系统层面:数据源于系统,也变于系统。了解公司核心系统及其核心能力、覆盖范围、演进过程,让数据研发工作推进更稳。
最终,我们需要形成对新环境的整体认知(涵盖业务、数据、系统),在捋清各方协同关系的同时,在了解到各切面的核心要点后,才能完成与业务、技术的高效沟通,快速推进工作。
三、要点一:通过“看组织架构+梳理业务场景”,看清业务
数据的核心还是要服务和支持业务的发展,并在满足业务看数用数需求的基础上,反哺业务系统,助力业务挖掘潜在机会。因此数据研发工作的第一要务必然是要了解业务。尽可能深入的了解业务,然后构建起自己的业务全景认知体系,这将有助于我们与重要合作伙伴(如业务、BI 等)之间实现高质量沟通,快速对齐想法。
同时这也有助于了解我们做的事情/负责的业务数据范围在公司里的位置,从而为自己的工作注入更多精彩和可能。我相信,对业务的认知越广越深,和各方的的对话效率也越高,质量也越高。
前期如何快速了解业务,可以从三个层面入手:看组织架构关系、了解业务核心能力、梳理业务核心场景。
多看看组织架构,构建业务认知框架。通过看组织的架构关系,可以帮助我们明确自己的工作职责、各方的协同关系、组织的业务范畴和公司的业务形态,最重要的是可以帮我们树立起对公司业务认知的框架。有了框架后,再去分门别类的扩展和填充知识,整个过程就快多了。公司的组织战略、业务形态、业务场景的划分,最直接的体现就是组织阵型和组织架构。通过看组织的架构关系,可以帮助我们了解公司内部业务和数据流转的复杂度;通过了解各个部门模块的职责和关系,有助于我们快速找到资源和支持。
了解业务核心能力,确定工作核心方向。通过了解业务核心能力,可以为我们构建精品数据提供有力的指导,快速聚焦于业务的核心场景。数据的职责不仅在于帮业务看清现状,更应该辅助业务决策未来,所以抓住整个事情的主心骨特别重要。建 100 张全场景无死角覆盖的数据表,不如构建一张能为业务提供未来规划支持和打法策略构建的精品表。另外这也有助于新人更好地理解公司所处的行业和市场竞争情况、公司的核心竞争力和优势,然后规划好自己的职业发展方向,把最大的精力投入到业务最关心的方向上。比如菜鸟物流的核心履约和关键环节的物流流转,蚂蚁的核心支付能力构建等。
试着梳理核心场景,工作还是要落到细节之上。通过梳理业务核心场景,可以帮助我们更清晰地了解业务的数据分析需要,以及公司各个业务场景的特点和数据需要,为我们的工作提供更有目标性和针对性的指导。和业务、BI、技术的沟通协调,通常是发生在实际的各个业务场景上,而场景与场景之间又是互相协同和串联重叠的,所以我们可以将有限的精力花在梳理业务最常见最核心的场景之上,再不断衍生丰富。比如蚂蚁的商家收钱码、个人转账等。
实践案例
以笔者之前在菜鸟和近期在蚂蚁的工作经历为例,菜鸟的业务围绕物流展开,业务场景相对简单但业务流程非常复杂;而蚂蚁的业务发源于支付,业务过程相对简单但业务场景非常复杂。
因此在业务形态和组织架构上,菜鸟除了纵向的业务板块划分外,还会有横向的按流程的职能拆解;蚂蚁则是重点在各纵向业务场景的拓展。
四、要点二:学习新的领域模型,了解数据现状,推进高效工作
数据研发的日常工作围绕数据展开,学习业务领域的数据特点、学习与之匹配的数仓建模方法、学习用于支持研发工作的数据技术与工具,是数据研发工作有序开展的基础,需要我们重点投入精力去学习和了解。
同样的,我们可以通过了解数据域划分、常用数据表、数据白皮书等方法快速予以切入,并基于此帮助我们快速了解数据现状,构建起全局的数据架构及企业主数据内容的认知。
另外也可进一步巩固我们对业务的理解和认知,加强和部门内外同学之间的高效协作,为各方快速提供支持。
了解数据域的划分,拆解业务核心过程与场景。通过了解数据域划分,有助于我们快速理解业务数据的范围划分,了解公司的主数据现状。最主要的是可以结合团队组织架构,按域找到对应数据的负责同学,方便后续跨域数据协同工作的推进。
收集日常高频被用的数据表,了解数据关注点。通过收集常用数据表,可以帮助我们了解业务、BI 日常的数据关注重点,以及公司最主要的业务活动和业务过程。基于此,前期我们可以将精力投入到大家最关切的数据上,快速承担起各方数据需求支撑的角色,和大家保持同频的数据沟通。
收集和学习数据白皮书,增强领域数据的认知。不管是蚂蚁、菜鸟还是淘天,大家都有个比较好的习惯,就是沉淀数据白皮书。这一点非常的重要,尤其是对新人来说,可以极大的缩减学习业务和数据的过程。数据白皮书一般都会涵盖:核心的业务过程、常用的数据模型、各数据模型的业务数据范畴及用法等。想起曾经看到的一篇公众号文章,其中有部分就讲到:对比其他动物,人类为什么能够发展到当今的科技水平,是因为人类发明了文字,然后通过文字将各类知识不断的浓缩、记载、再传承下去。不然每个人都得从 0 开始,自己探索这个世界,那我们将还会停留在原始社会。
实践案例
虽然自加入阿里至今,只在最近主动发起过一次转岗,但中间随着部门与业务的调整,换过好几条业务线。
每次调动对接新业务,笔者都会收集下相关业务文档与数据白皮书文档,然后先看看文档目录结构和一些核心的业务流程介绍,快速补齐对业务 &数据的整体认知,接下来会通过系统元数据查找下大家高频访问的数据表,了解大家的关注点,最后在日常沟通协作中也会多问一句,让相关业务与技术同学帮自己科普下。
因此每次调动对接新业务的初期,基本上也都能较快地进入状态,快速且高效的对接相关数据需求。
五、要点三:探索业务系统演讲和数据流转过程,让工作推进的更扎实
数据来源于业务系统,也常随着业务系统的演变而需不断迭代。通过了解公司核心系统及其核心能力、覆盖范围、演进过程,可以让我们在后续推进数据研发工作时,对自己负责的数据从哪里来、未来会有什么样的变化,做到心中有数。
毕竟,在数据、业务、系统三者中,数据研发同学作为承上启下的角色,只有对底层也足够了解,才能更好更快地支持业务,快速回答清楚诸如“xxx 数据要从哪里取?这个数据口径是啥?我要的 xxx 数据怎么没有。”等最为常见的问题。
对于业务系统,核心需要了解公司有哪些业务系统,每个业务系统的核心职责/能力,以及其支撑的业务范围,在精力允许的情况下最好也了解下公司核心系统的演进过程及拆合变化。
重点了解下核心系统及其核心能力、业务范围。收集常用系统名称及其关键词缩写,了解不同系统的核心能力及差异,可以帮助我们快速了解需要的数据在哪里,以便于在业务提出新的数据需求时,我们知道该如何推进研发工作,该从哪接入数据。日常工作中,我们需要投入较多精力在数据来源和业务逻辑的梳理上,而对于新人来说精力有效,因此我们可以聚焦于公司的核心系统,再衍生开了解与其他系统的流程交互与数据交互。
如有余力,了解公司核心业务系统的演进过程。如有余力,可以从内外部资料进一步了解公司核心系统的演进过程及拆合变化,这有助于我们灵活应变,及时调整、优化我们的数据研发工作。公司业务和系统不是一成不变的,随着公司发展和商业环境变化,业务和系统都需要不断演进。我们吐槽的“历史垃圾代码”可能在当时是最优或最有效的解决方案;也有可能我们自认为写的“优秀代码”在一两年后会被吐槽为“代码屎山”。这件事需要辩证地去看,对事情的评价需要结合当时的背景。过去做的好的或当下认为过去做的不好的,对我们当下的研发工作都有一定的参考意义。我相信,大部分人在设计数据模型时都希望能长久持续的复用下去的。因此我们需要了解的是当时为什么需要那样去做,然后结合当下我们遇到的问题,去理解和设计面向未来的数据架构和数据模型。
实践案例
菜鸟在业务初期,侧重平台建设,核心围绕物流详情和履约协同构建系统,随着业务的演进又拆解衍生出仓储、配送等负责具体某一核心业务过程的技术系统。
蚂蚁发源于支付业务,早期技术系统核心关注于支付的便捷性、支付成功率及对账一致性;随着业务场景的复杂,后续又拆解出关注资金流动、收单交易等系统,以及专门支持金融理财的业务系统。在了解业务的核心流程环节和相关系统后,我们大致就知道业务要的数据该从哪里取了!
六、核心能力:持续思考,持续迭代,形成自己学习新事物的框架
在学习落地的过程中,总结反思是非常必要的。
通过定期的总结与反思,可以帮助我们回顾自己的学习成果以及工作中的不足之处,进而指导我们的后续工作和学习方向。整个学习落地过程中,我们需要不断反思、定期总结、然后不断迭代。
学习落地过程中的总结和反思是提高工作效率和质量的必要步骤。
不断反思。反思工作中的不足之处,哪块业务知识 or 技术储备有欠缺,可以帮助我们找到自己的学习和工作瓶颈,有针对性地制定后续的学习和工作计划,提高工作效率和质量。
定期总结。定期总结可以帮助我们梳理并系统化自己的知识体系,便于巩固和深化自己的学习成果,以及更好地应用于实践。换到一个新环境时,往往需要快速学习和掌握新的业务知识和技术,而这个过程中可能存在知识掌握的不充分或者不够系统化等问题,进而导致后续的工作难以推进。因此,通过定期总结可以帮助我们更好地梳理和整理自己的知识体系,保证所学内容的完整性和准确性,提高学习效率和成果。
不断迭代。不断迭代这一点非常非常重要,换到一个新领域新环境,一开始总结的内容框架甚至有可能是错的,毕竟我们还不是该领域的专家,因此就需要我们抱着不断试错、不断迭代的心情。甚至在学习总结的过程中发现之前的认知框架需要全部推倒从来,但即使是错误总结,相信我们的认知也比之前深入了几分。
实践案例
新人在学习新业务新知识的过程中,以“老人”视角总结产出“新人初识业务指南”,也是一种非常好的总结反思方法,既能切切实实站在一个新人视角,帮助后续新人快速学习落地,也能帮助自己形成更体系的新领域学习框架。
就如本文一样,笔者也是希望通过总结反思自己落地过程中踩的坑和学习方法,能帮更多新人快速落地,同时也希望能帮自己形成对新领域的学习框架。
七、总结
作为一名数据研发同学,换到一个新环境时,在“新人”落地过程中,可通过以下几点快速推进工作:
看业务:通过了解公司组织架构、核心业务能力 &场景,快速构建业务认知框架,明确自己在公司中的位置和对接的业务范围。
学数据:通过学习数据域划分、常用数据表、数据白皮书,快速了解数据现状,构建全局数据认知,巩固自己对业务的理解。
探系统:通过了解公司核心系统及其能力和演进过程,了解公司业务发展方向,有助于及时调整、优化我们的数据研发工作。
快速掌握以上三点,可帮助我们快速了解和适应新公司的业务与日常工作流程。更重要的是,在落地过程中,我们需要积极学习、积极探索、然后不断反思,并不断优化自己的工作方式。最终能形成自己思考和看问题的方法和框架,提高工作效率和数据质量。
讲了这么多,希望能帮助到像我一样的跳槽“新人”快速适应新环境,另外这也是在帮我自己构建起对新环境、新领域、新知识的学习认知框架。很多地方不一定对,抛出来也是希望能和大家就此问题一起探讨探讨。
版权声明: 本文为 InfoQ 作者【阿里技术】的原创文章。
原文链接:【http://xie.infoq.cn/article/83ed877ddb53717f2a7f6af43】。文章转载请联系作者。
评论