主要工作
开发公司海外房产业务的 CRM 项目,为置业顾问提供一套完善的客户关系管理系统。项目后端使用 ThinkPHP 框架,Element UI 作为前端框架开发了美观高效的后台管理系统,设计了整个系统的权限管理、顾问跟进管理、电话回访录音文件管理、统计图表等主要功能。该系统业务复杂,前端界面功能丰富,开发完成后为公司的置业顾问大大提升了工作效率以及用户成交率。
主导设计了公司各项目间的接口架构,梳理了原项目庞杂的业务逻辑,整理并拆分出高频调用的重要服务,服务使用 PHP Swoole 搭建,并采用 Docker 容器部署。设计了各服务间的 RPC 通讯框架,使用Consul作为服务注册与发现工具。项目采用组件式低耦合的开发方式,通过创建 Composer 包实现公共调用库共享,并为 RPC 客户端编写 IDE 友好的 SDK。完成后的架构大大简化了项目间的依赖关系,降低了耦合度,同时通过 Docker 编排文件进行容器部署减少了项目对运维工作的依赖性。
为符合数据安全的合规性,我制定了服务端数据的加密方案,根据 Nginx 提供的模块指令,使用 OpenResty 结合 Lua 语言调用 C 编译的 RSA 加密模块对传输的用户敏感数据进行加密。替换原业务层代码的加密方案,使得服务端开发人员无需再关心数据的加密,同时也保证了对所有日志数据进行脱敏处理。得益于统一控制了数据入口,使得公司的用户数据更加安全以及提高了开发管理效率。
开发了客户通话录音转文本的项目,利用阿里云语音识别服务使公司几万小时通话录音文件转换为文本内容。项目起初使用 Python 语言开发,后因性能问题转为使用 Go 语言,利用 Go 语言简洁的多任务特性开发出能够同时处理多个语音文件的码率转换、上传、识别、轮询结果,使处理时间大大缩短。
使用 Go 语言替换掉一些旧有项目,对论坛圈子项目的用户行为统计数据接口进行替换以减轻原有服务负担。