需求
导出匿名池指定职位、职级、管理级别、技能标签的员工侧数据
流程
先对一句话的需求进行了完善,确定了目标用户、时间范围、导出格式、目标。开始使用半自动化工具,先重现写了sql,减少目标用户范围,拿到全限制条件下的用户id。因为要求的数据格式和原来的Excel模型不完全相对,在数据分析后半段(用户聊天消息分析),使用了人工逐条分析,效率比较低。在三个小时后给出了一个版本的excel,但因技能标签有遗漏,大致扫描了下,发现“自然语言处理”就是“NLP”, 在和业务沟通后,又补充一个带有“自然语言处理”的excle。 这次手动改了下导入的Excel模型,结合半自动化分析流程,一个小时内,分析处理了比第一个excel更多的数据,最后将两个excel手动合并,交给了业务。
耗时:4小时,预计耗时1小时
分析
这次使用了专项的半自动化分析流程,提高了效率,但在使用过程中,为了避免前面分析全量数据的影响,把原来的数据备份后删掉。然后重新导入这个新专项的数据,数据之间的相互影响没有屏蔽掉,降低了效率。并且在确定目标用户范围的时候,没有去检查可能出问题的技能标签,导致漏掉了十几位用户,花了一个多小时导这些用户数据,还花了时间合并excel。导入的Excel模型前面没完善,因为每次导的数据都不一样。
问题
- 目标用户确认时,没有考虑完善,没注意到除了"nlp"外,有人会选“自然语言处理”,导致额外花了一个多小时。
- 导入的Excel模型前面没完善,可以自己手动用@ExcelProperty(value="")去指定,但是一开始没有,手动分析的数据,浪费时间。
- 专项数据和全量数据相互影响,导致重复删数据、导数据
- 没有优化代码或者注释,导致使用的过程中使用过错误的方法
- 手动修改原有的导入Excel模型,不够灵活,也是与旧的模型冲突,要找出一种动态的导入Excel模型
值得肯定的地方
- 专项的半自动化分析流程的确达到了提效的目标,从原来的一般一天,缩短到3小时
- 在最后还是查到了技能标签不全的问题
- 通过手动修改导入Excel模型,加快了第二次的数据分析处理
总结
- 半自动化流程要改进的地方现在是全量数据和专项数据的冲突,动态导入Excel、动态导出Excle
- 系统代码要整理下,避免代码越来越多,遗忘了代码的功能,尽量将相关方法聚合,争取做到一种业务对应一个控制器
- 仔细分析目标用户限定规则,能提效减少错误
改进措施
- 尝试python导入excel,java用grpc调,虽然变成了两个项目,看能否提高消息,后续又变动,只改python脚本
- 整理原有半自动化工具的代码
- 让专项使用单独数据库,即全量使用一个数据库、专项使用一个数据库。想办法在原有的@DS注解上,实现传参切换动态数据源。