ID:261320

有团队

高级后端研发工程师

  • 公司信息:
  • 携程
  • 工作经验:
  • 4年
  • 兼职日薪:
  • 500元/8小时
  • 兼职时间:
  • 周六
  • 周日
  • 所在区域:
  • 上海
  • 长宁

技术能力

1. 熟练掌握 Java 多线程,掌握 JUC 工具包
2. 熟练掌握 I/O 的相关应用及底层原理,掌握 NIO 基本原理
3. 熟练掌握 JVM 类加载机制、内存模型、GC 算法,了解 JVM 性能调优
4. 熟练掌握常见集合、数据结构与算法,掌握栈、队列、树等数据结构的构造与使用,掌握常见查找、排序等算法
5. 熟练掌握常用设计模式,了解 7 大编程原则,对面向对象编程思想有较深刻的体会
6. 掌握 SpringMVC、Spring、SpringBoot、 Spring Cloud
7. 掌握 MyBatis,深刻理解 ORM 框架的底层原理
8. 掌握 Tomcat,深刻理解 WEB 容器的底层原理
9. 掌握 Redis,掌握常用数据结构、事件监听、淘汰策略,了解缓存穿透、击穿、雪崩的产生原因和解决方案
10. 掌握 Zookeeper,掌握常用应用场景,掌握分布式锁的构建手段与使用
11. 掌握 Kafka,掌握消息队列、Kafka Stream 技术,对基于事件驱动的实时统计方案有一定心得
12. 掌握 Mysql,掌握主从复制、多源复制、多主同步、MHA 实现主从自动切换等集群构建手段;掌握 Mysql 常用函数、子查询、关联查询等复杂数据库操作;掌握 Mysql 底层原理,对存储引擎、事务、锁、索引、分表/分区/分库、数据库优化有一定心得;深刻理解 redolog、undolog、binlog 的含义和作用。了解 Oracle、SQL Server
13. 掌握 Quartz,深刻理解其底层的时间轮算法,和基于 Mysql 行级锁实现的分布式任务调度原理
14. 掌握 InfluxDB,掌握常用聚合函数、窗口函数等操作
15. 熟练运用 BI 技术,研究过 SaiKu 的底层源码,深刻理解 OLAP 思想,掌握数据的钻取、过滤、分类和排序等手段
16. 熟练运用 ETL 技术,研究过 Kettle 的底层源码,对数仓系统的构建方案有一定心得
17. 熟练运用规则引擎技术,研究过 Drools 的底层源码,了解底层 RETE 算法
18. 熟悉 Maven+Git+Jenkins+Docker+Kubernetes 自动化部署与运维技术
19. 熟悉 ELK(Elasticsearch+Logstash+Kiban

项目经验

一、商业智能系统(BI 系统)
软件环境: SpringBoot+Spring+MyBatis+Kafka+Zookeeper+Kettle+Quartz+SaiKu+Kafka Stream 开发工具: IDEA+Maven+Git+Jenkins+Kubernetes+Docker+Mysql+InfluxDB
项目描述: BI 系统的核心作用是发掘呼叫中心系统的数据价值,并对其运行状态进行监控。主要分为三个模块:话务记录管理模块(BI-Call)、报表管理模块(BI-Report)和监控管理模块(BI-RTStat)。
责任描述: 完成 BI 系统服务端开发,包含如下模块:
1、BI-Call 从 Kafka 接收到呼叫挂断事件后,把话务记录写入 Mysql 中,并提供查询服务。技术难点是数据量巨大(超
十亿),但查询效率要求高(三秒内)。在写数据时使用了异步写入;在读数据时使用了 Mysql 联合索引,运用了数
据库读写分离、数据库分区和数据库归档技术。
2、BI-Report 使用 Kettle 作为 ETL 工具,使用 Quartz 作为分布式定时任务调度工具,使用 SaiKu 作为多维分析工具,
支持用户自定义报表,支持数据的钻取和维度转换。
3、BI-RTStat 使用 Kafka Stream 流处理技术,以事件驱动来完成实时统计,统计后的数据定时写入 InfluxDB 中,配
合 Grafana 展示为图表。支撑了某银行信用卡中心近 1 万坐席呼叫数据的实时统计与监控。

二、交互式语音管理系统(IVR 系统)
软件环境: SpringBoot+Spring+MyBatis+Kafka+Zookeeper+Redis 开发工具: IDEA+Maven+Git+Jenkins+Kubernetes+Docker+Mysql
项目描述: IVR 系统是一套通过调用底层 CTI 系统的接口来完成复杂的呼叫流程控制的系统。它可以用来做语音导航、满意度/问卷调查、机器人会话管理等功能。前端支持拖拽生成 IVR 流程;服务端主要包含三个模块:导航流程管理模块(IVR-Web)、导航流程执行引擎(IVR-Engine)、IVR 支持组件(IVR-Support)。
责任描述: 完成 IVR 系统服务端的设计与开发,包含如下模块:
1、IVR-Web 负责导航流程的创建、编辑与配置等功能。导航流程会缓存到 Redis 中,并持久化到 Mysql 数据库。
2、IVR-Engine 负责解析和执行导航流程,并调用 CTI 系统的接口来控制整个呼叫。它从 Kafka 接收到呼叫开始事件后,
会产生一个 Session 对象,该 Session 对象会维护整个 IVR 呼叫的生命周期。为了使服务能够无状态运行,该 Session 对象被缓存在 Redis 中,导航流程的执行状态、执行位置等信息会实时变更到 Redis 里,保证了单实例出现故障,呼
叫能够被其他实例所接管,确保了 IVR 系统的高可靠性。该服务为呼叫中心系统的核心服务之一,支持水平拓展,其
被用来作为某大型银行信用卡中心的机器人系统,最大业务量 3000+并发。
3、IVR-Support 提供了 RESTful 接口调用、脚本执行、逻辑计算、TTS 语音合成、ASR 语音识别等功能。

三、运营管理系统(BOSS 系统)
软件环境: SpringBoot+Spring+MyBatis+Kafka+Zookeeper+Quartz+Drools+Kettle+Redis 开发工具: IDEA+Maven+Git+Jenkins+Kubernetes+Docker+Mysql
项目描述: BOSS 系统是一套供运营管理人员来管理呼叫中心的系统。主要分为两个子系统:一个是呼叫中心系统的统一配置与管理系统,包含租户管理、坐席和分机管理、用户和角色管理、权限管理等;另一个是计费管理系统,包含计费数据产
出、计费规则管理(针对单通话务计费)、账单规则管理(针对租户所有的话务进行整体计费,类似套餐)、出账、
开发票、预充值、余额管理等功能。
责任描述: 完成计费管理子系统服务端功能的设计与开发,包含如下模块:
1、BOSS-Export 计费数据产出模块接收 Kafka 中的计费事件,并把其记录到数据库中。
2、BOSS-Pricing 计费管理模块包含费率管理和自定义计费规则管理,使用 Quartz + Drools 完成单通话务记录的计费
(每月月初出账)。由于数据量大(每月数据近 3000 万),使用了多线程技术。
3、BOSS-Billing 账单管理模块包含自定义账单规则管理,并使用 Kettle 完成

团队情况

  • 整包服务: 微信公众号开发   微信小程序开发   PC网站开发   H5网站开发   App开发   WebApp开发   文档原型图   DBA开发   
角色 职位
负责人 高级后端研发工程师
队员 后端工程师

案例展示

  • 商业智能系统(BI 系统)

    商业智能系统(BI 系统)

    软件环境: SpringBoot+Spring+MyBatis+Kafka+Zookeeper+Kettle+Quartz+SaiKu+Kafka Stream 开发工具: IDEA+Maven+Git+Jenkins+Kubernetes+Docker+Mysql+Influx

  • 交互式语音管理系统(IVR 系统)

    交互式语音管理系统(IVR 系统)

    软件环境: SpringBoot+Spring+MyBatis+Kafka+Zookeeper+Redis 开发工具: IDEA+Maven+Git+Jenkins+Kubernetes+Docker+Mysql 项目描述: IVR 系统是一套通过调用底层 CTI 系统的接

查看案例列表(含更多 0 个案例)

信用行为

  • 接单
    0
  • 评价
    0
  • 收藏
    0
微信扫码,建群沟通

发布任务

企业点击发布任务,工程师会在任务下报名,招聘专员也会在1小时内与您联系,1小时内精准确定人才

微信接收人才推送

关注猿急送微信平台,接收实时人才推送

接收人才推送
联系聘用方端客服
联系聘用方端客服