今天团队在讨论过去一段时间的问题,有提到这么一个观点:作为数据仓库工程师,被动接了很多需求,数据的业务价值不明显。
互联网公司的业务变化快,经常会有产品上线或旧业务变更,这是与传统软件公司的最大区别,数据仓库也是在这种环境下开发。
主动设计,避免被动接需求
数据仓库被动接需求最常见的场景是,产品经理提出需要开发xx报表,里面有a、b、c三个指标,过了两个月又来一次需求,新增加d、e两个指标,或者新增加一个筛选维度。
要避免这种情况,最好的方式是主动设计,开发节奏掌握在自己手中,这需要充分理解业务需求。事先设计好数据模型,有哪些业务过程,提炼出事实、维度,列举出可能的计算粒度,能囊括各种新需求,既保证很高的开发效率,又提供了强大稳定的数据模型,保证数据口径一致。
这里需要注意数据仓库设计与业务发展相互匹配,曾经出现过数据仓库过度设计的情况,业务方如果真的不关心数据,数据模型做的再好也没用。
把数据看成资产来积累
近两年流行数据资产治理的概念,资产是可以保值与增值的,可以把数据看成是公司的一种无形资产。进而,从公司管理的角度来思考,要考虑公司有什么数据资产,还缺什么数据资产,还需要补充什么数据资产。回到数据仓库的视角,就是要看数据仓库里已经有什么数据,还缺什么数据,要补充什么数据。
比如公司新上线了一个产品,产品经理或运营还没开始关注数据,但是作为数据仓库开发者,要主动发现有新产品上线,且数据仓库没有相关数据,进而主动收集相关产品的数据到数据仓库里。
另一个场景,对于一个已经成熟的业务,是不是把有价值的用户行为都采集了,比如用户的每次点击行为、屏幕尺寸、经纬度。
有了这种数据资产的思维方式,就能更主动洞察到数据仓库的发力点。
关注数据的价值
被动接需求的另一面,是需求做完后没觉得有价值。数据最终产生业务价值,相关的开发者才会更高的成就感。
数据是一种思维方式,是对经验的补充。一个报表开发完成,可以让数据成为业务的量化衡量,但这样并没有产生价值。通过看数据,发现业务问题,进而推动业务改进,这个是通过数据推动业务改进。也可以让数据直接变现,常见的业务有广告、推荐、金融风控。如果数据仓库能直接为业务带来价值,相比开发者的成就感会非常强。