商业智能(BI)可能是很多人所不熟悉的行业,但对于企业来讲BI开发却很重要。BI职位可以分为好几个角色,比如业务分析、需求分析,ETL开发,数据分析,数据挖掘等等。公司里的BI职位可能会负责一到数个角色,小公司里的BI开发往往会负责更多的工作。
我从2016年开始接触BI开发的工作,一开始只做一些ETL相关的工作,但是后来负责的工作越来越多。从服务器架设,到数据库的管理,再到报表的开发、数据仓库的建模,我都摸了一遍。不同的工作难度和任务量各不相同,ETL相关工作、报表开发工作、数据分析和数据挖掘,相对而言对技术水平要求更高。
做BI开发会碰到的几个尴尬问题
做BI开发的工作,如果说技术学习方面,最主要学到的东西就是数据库软件或者工具软件的使用。Oracle、DataStage、BusinessObject一类的工具,必须要熟练的使用。如果看BI开发的招聘信息,很多公司都要求应聘者会使用这一类的工具软件。BI开发除了熟悉技术知识之外,还需要跟一线的业务人员沟通,了解客户的具体需求,然后根据需求建模,建模结束之后就是实施。所以做BI开发还会学到很多项目管理的知识。
提高跟业务人员的沟通能力,提高对业务需求的理解能力,提高逻辑设计能力和模型搭建能力,都是BI开发人员成长和进步的空间。
但是在跟项目的过程中,BI开发人员会遇到各种各样的尴尬问题:
第一个问题就是枯燥乏味的重复劳动。因为在项目实施的过程中,并不是所有的业务问题、数据问题都需要复杂的逻辑和模型,很多庞大的数据量虽然逻辑不复杂,但是也需要进行逐个处理。这对于BI开发人员来讲,就是纯粹的体力活。看起来很简单的任务,但是做起来非常乏味无聊,会让人感到很疲惫。
做BI开发会碰到的几个尴尬问题
第二个问题就是BI开发人员想积累技术能力比较困难。因为每个企业使用的数据库也好,工具库软件也好,不尽相同。所以很多BI开发人员什么软件都会用一点,但是对哪个软件都不精通。这就存在一个广而不深的问题。所以BI开发人员很难成为一个技术专家。
第三个非常尴尬的问题就是不同的项目,所需要的源数据结构是不完全相同的。每接手一个新的项目,BI开发人员就需要从头开始做,是无法套用之前的工作成果的。因此,相对于其他开发,BI开发需要耗费更多的时间。