主要工作
参与微信小程序和打印APP的后端综合服务接口,包括下单,文件上传与转码,单设备多打印机的减纸逻辑,纸张预警功能,微信消息的推送服务以及运维人员的通知服务等整个业务系统的开发与维护。公司用户数快接近千万,有一定的性能瓶颈,其中用到的主要缓解性能的服务有MySQL集群、后端均衡服务器、Redis 缓存和队列服务。
负责打印券制作的自动化。公司定期和不定期为用户提供优惠打印服务,通过发放打印券提升用户黏度。起初是由客服人员通过后台制券系统制定活动所用到的打印券,通过原 PHP 服务系统上传券的图像模板生成打印券,然后等待制作完成后下载这些券的压缩包,最后解压并按照运营人员的数量分配列表打包,再分别分发给运营人员。整个流程非常耗时也非常复杂,我重写了这一流程,客服人员仅需配置好活动信息和运营人员的数量分配,整个制券作业将一步完成,为了提升打包的效率,压缩部分代码使用 Go 语言实现,并且为每个运营人员的压缩包设置了各自的密码,客服人员仅需把所有包发到群里,每个运营人员就可自助认领。
主导开发了点位开发人员的绩效结算系统。公司为了扩大市场份额,需不断地去寻找优良的点位铺设新的打印设备,因此有大量的点位开发人员加入公司。起初,他们每月的绩效都由财务人员人工核算,大概需要一个星期才能算明白,涉及到复杂的结算规则,如到期用户数是否达标,所属月份与发放月份的不同等等几十项规则,这就需要一套IT系统来做这件事。我负责开发了这套系统,按照业务规则解决了所有核算逻辑,通过后台计划任务跑点位数据以及实时用户数核算,并且增加人工干预绩效功能,实现了月绩效,季度绩效,补发等逻辑的全部核算,并提供财务打印,数据导出等功能。
负责后台数据管理系统的开发和维护,对打印设备的管理,信息维护以及多打印机纸张扣减逻辑代码做了重构。对设备运营,打印耗材,设备用户数相关的统计功能进行开发与维护。期间也重构了一些基础服务,如: 日志系统,采用了中间件架构规范了日志记录; 数据脱敏服务,对业务层的敏感数据进行统一加密,维护数据的安全与合规性; 引导和帮助所有开发人员迁移到 Ubuntu系统并分享各种 Linux 脚本的使用以提升开发效率 (公司对于代码的保护非常严格,所有开发人员只能通过远程连接到虚拟机进行开发,虚拟机使用 Windows,而且延迟很高,效率极低)。