我是大叔
1月前来过
全职 · 1000/日  ·  21750/月
工作时间: 工作日8:00-22:00、周末8:00-22:00工作地点: 远程
服务企业: 0家累计提交: 0工时
联系方式:
********
********
********
聊一聊

使用APP扫码聊一聊

个人介绍

7年+团队管理经验,7+架构设计经验,12年+开发经验,涉及到的领域包括:保险,旅游,电商,saas,crm,银行,运输等。熟悉java平台架构及开发,熟悉各类主流的中间件及框架,在实际工作中,能做到独立的系统分析和系统架构设计,有高并发,高可用及大数据量存储经验。承担团队管理及代码编写或系统优化工作,具有良好的项目质量把控能力。本人主要的技术包括:
1、熟练掌握java基础,多线程,并发编程,线程池,平时也看过jdk源码及底层实现
2、熟悉JVM内存模型及常用GC算法,有jvm调优及线上处理经验
3、熟练掌握spring,springboot,spingcloud (或者springcloud alibaba)看过部分源码及底层实现
4、了解容器技术:service mesh,k8s
5、熟悉中间件:rocketmq,redis,kafka
6、熟悉主流数据库:mongodb,mysql,sqlserver,postgresql,对于mysql底层事务,锁,底层存储有一定的了解
7、了解云平台:阿里云,亚马逊云
8、熟悉常用设计模式,并能熟练运用于实际项目中
9、了解搜索引擎:ElasticSearch
10、了解命名服务及分布式协调组件:zookeeper
11、熟悉分布式事务原理,分布式锁原理
12、熟悉Netty(曾经用netty写过网关)
13、熟悉DDD架构,并在实际项目中运用
14、了解MPP数据库doris
15、熟悉nginx
16、熟悉负载均衡,限流,高并发高可用场景的解决方案

工作经历

  • 2020-09-21 -2022-06-23凯捷咨询有限公司架构师

    1、针对客户各类业务提出技术解决方案 2、统筹整个项目的后端部分,包括微服务框架或者组件的选择,数据库都选择,中间件的选择等。项目中业务边界的划分,业务之间逻辑梳理,流程图设计 3、主导微服务项目的架构设计(业务架构,技术架构) 5、参与项目代码的编写,项目整体脚手架搭建,接口规范定义,数据库规范定义,开发规范定义等 7、管理项目团队,带领小伙伴按期进行项目交付,包括:主持项目会议、开发任务安排、指导开发人员技术实现、资源调度、各个团队之间沟通等 8、线上问题的解决及代码优化或者系统历史遗漏问题优化 9、开展技术会议的分享 10、参与公司其它项目打单,参与解答未来客户技术类问题 11、项目服务器环境搭建 12、服务器运行卡顿问题排查

  • 2016-09-28 -2020-06-30高知特信息技术(上海)有限公司架构师

    1、参与客户项目竞标阶段方案编写落地 2、评估项目整体可行性,成本等,适合项目技术的选择 3、环境的搭建、项目框架的搭建及使用 4、主导基于saas的crm、保险、电商海淘平台等系统架构设计(代码层及系统层) 5、上述项目代码的编写 6、数据库高可用搭建(比如数据库基于keepalived+haproxy来实现数据库高可用和负载均衡),redis哨兵或者redis分片集群搭建,mongodb分片+副本搭建 7、大数据量存储分表分库的设计 8、开发中间件(比如自定义网关,配置中心)作为公司的技术沉淀 9、性能调优比如数据库方面的调优 10、项目管理:包括,进度把控,人员调度,开发任务安排及指导开发人员技术实现等 11、线上问题的解决及系统优化 12、项目内人员的绩效考评管理 13、技术的研究引入及推进和培训 14、代表公司进行项目的竞标,讲方案 15、整个团队人员的管理(比如挖掘各个同事的长处,让他们的长处能在实际工作中发挥出来,帮助他们更快速的成长,让他们觉得自己在这个团队中是有意义的,对于能力强的,在实际工作中承担多点的责任,让其感受到被重视,安排技术好的,为团队做技术分享,让整个团

  • 2016-05-12 -2016-09-13上海鲁朗网络科技有限公司架构师

    该项目是一款物流app,分为前台用户app及后台管理系统,前端app主要用于发货方和运输方之间的交易(发货方发布需要运输的货物,运输方可以在线抢单),功能包括,发布货物,抢单,油卡充值,货物管理,货物运输跟踪,在线注册,车辆管理等板块。后台管理系统,主要对应货主和运输方的管理,线下校验,代收款,活动组织等功能,整个项目采用前后端分离开发,手机端采用安卓和ios原生开发,后端服务使用Java 1、全面负责小象快运app后端的整体系统架构设计(包括手机用户端和后台管理模块) 2、开发设计文档编写,参与需求评审,技术调研和技术选择 3、jvm性能问题的定位和优化 4、产品营销活动的讨论和设计 5、开发模块的划分和任务分配 6、跨部门业务沟通及跟进 7、服务集群的搭建如redis,mysql等 8、引入mq进行分布式事务处理 9、代码的编写及线上问题解决和优化 10、基于netty的自定义网关组件设计和开发

  • 2015-05-04 -2015-05-08上海集博架构师

    本项目是一款移动端健康管理类app,分成前端安卓和ios,后端后台部分。前端功能主要针对患者和医生之间的沟通,如医生在线诊断,医生在线查看病例,医生在线查看化验结果等,患者可以将每日健康指数及病情上传供医生查看。 后端主要包括,医院,医生,患者,医生服务产品,疾病信息等维护 项目主要用到的技术是java,框架是ssm,数据库用sqlserver及mysql,引入了redis,消息队列,mongodb等中间件。 项目亮点包括: ● 代码的设计充分利用了设计模式,主要包括适配器、装饰者,观察者,责任链的等设计模式 ● 低耦合高内聚代码设计 ● 整个项目考虑到并发访问时出现的性能瓶颈,充分利用redis作为热点数据缓存,数据库采用分表分库,读写分离等方式 ● 通过消息队列保证分布式执行数据一致性 业绩: 1、负责手机端 app 及后台系统的架构设计 2、参与项目代码编写 3、定位数据库性能问题和优化处理 4、代码的审核及指导工作 5、需求调研及可行性分析 6、优化历史代码,利用设计模式设计高扩展性的代码 7、预测未来5年数据量,大容量数据设计分表分库存储 8、mysql主从和高可用搭建

教育经历

  • 2010-09-01 - 2015-06-30上海财经大学金融学本科

技能

Netty
RocketMQ
Nginx
postgres
Mybatis
多线程
Spring
SpringCloud
微服务
0
1
2
3
4
5
0
1
2
3
4
5
作品
基于Saas平台的CRM产品(自研)

考虑到salesforce使用比较昂贵,有些客户成本支出比较大,公司决定自研一套比较轻量级的,进行推广,然后在这个基础上根据未来客户再定制。 主要分如下几个模块: CRM系统管理端: 租户管理,订单查看,系统配置(比如数据库实例配置,计费方式配置),销售报表,在线客服,支付管理,促销管理,问题收集(更好的改进系统) CRM租户端: 管理后台:注册租户,修改租户信息,登录,计费方式,支付,订单,内部crm用户管理(用户注册,访问权限设置),到期提醒,在线客服,使用问题收集

0
2023-04-03 04:48
某保险公司微信公众号

9000多万用户的*公众号售后的平台,可以在线办理各种保全操作,比如联系方式变更,银行账号变更,缴费频率变更,续期,OCR在线识别,理赔申请,积分兑换等业务,此外该*平台还能进行营销发布 后台保全管理系统:对接该公司保险核心数据库,核心数据库会提供api,从而能进行所有的保全操作,也能进行客户管理,包括各个渠道客户的管理,客户等级的管理,保单的管理,理赔处理等核心业务。 整个项目采用前后端分离开发方式: 前端:angular+H5 后端:开发框架采用springboot+springcloud,数据访问使用mybatis,中间件使用了redis,rocketmq,sharding jdbc 该项目代码层架构:基于DDD六边形架构分层 该项目物理架构:nginx代理后端网关(基于netty自研的网关)集群且nginx开启了限流(连接数限流,以及访问频率限流),网关再分发到具体业务微服务,服务之间调用使用feign,配置中心基于自研。 数据库层面基本上一个服务一个库,对于核心业务考虑分表分库,数据库高可用为2主2从(并引入了haproxy和keepalived这两个工具进行从库负载均衡及各个数据库实例可用状态监测) Redis高可用:使用Redis Sentinel方案保证redis高可用 队列高可用:rocketmq采用多Master多Slave同步复制模式 对于*端可能产生大流量访问的业务,使用mq进行削峰处理,对于产生订单,支付,通知等顺序的业务,使用rocketmq的顺序模式 项目亮点: 1、保证系统稳定运行及高可用,基本上按照集群部署或者多主多从的方式部署 2、Nginx开启限流,在并发情况下一定程度保护了后端服务 3、完善自研的网关和配置中心(比如网关中缓存后端服务,这样网关路由到后端服务时,直接取缓存就行,网关加入定时任务,拉取注册中心中各个服务,配置中心加入配置项变更后广播到对应的服务) 4、DDD六边形代码分层,保障核心业务都在领域层 5、高并发情况,比如下单业务,使用队列进行削峰入库处理,但入库会有时间延时,所以在入队列之前引入缓存,这样查询的时候就算入库没有完成,也可以先查询缓存 6、分布式事务使用rocketmq的事务消息方式处理,也自研了一套基于netty的文件存储的分布式事务框架(但后来开发的不是很成熟,没有使用,但作为了我们公司的一个技术沉淀)

0
2023-04-03 05:04
上海某集团国企2万人左右使用的内部系统

业务上:由于该集团历史原因,很多功能都是集成放在一个系统中,导致系统建设越来越臃肿,耦合性和依赖性比较大,经常出现一个子模块出现问题导致影响整体系统运行不稳定的情况出现,对此,后续对该大系统进行了针对性的调研,重新进行需求整理,业务边界划分,提取公共业务功能。 技术上:由于对业务进行了划分,整体项目采用springcloud作为微服务进行开发,实施过程中,严格按照一个业务一个服务,一个业务一个库的方式进行微服务建设(除了由于历史原因,个别太重要,又耦合性较高的数据还是放在一个库中,其他都是一个业务,一个库),考虑到系统的以后的扩展性,整个项目充分利用设计模式:责任链(单据状态流转),策略(消除太多的if else),适配器(调用第三方接口和我们自己内部数据对象一直),模板方法(提取功能方法),门面(隐藏具体实现细节,提供统一访问入口访问具体的多个接口),工厂,装饰,观察者等。 架构上:前后端分离,用nginx代理后端网关集群(springcloud gateway),网关再转发到后端服务,服务之间feign调用,服务链路追踪使用skywalking,配置和注册中心用nacos,同样也是用nginx来代理nacos集群。对于体量大的业务,采用分表分库处理。服务之间跨事务,使用消息队列rocketmq进行最终一致性处理,涉及到检索业务,比如图纸归档信息等都是同步到es,进行后续的检索。对于历史聚合查询目前都是T+1处理(因为目前体量不是很大),但考虑到后续数据增长,到时不光要历史聚合查询,还要做成实时聚合分析处理,已建议选用MPP数据库doris(兼容mysql协议) 1、老系统业务整理,业务边界确定,业务拆分,提取公共功能 2、根据每个业务设计数据库,对于需要分表分库的确定分片键 3、整个项目人员团队管理及主持日常开发会议 4、定期与客户方面沟通项目进展及方案等 5、代码质量的把控及review 7、整个项目框架的搭建(采用DDD六边形架构) 8、使用设计模式抽象底层功能,提高扩展性及降低代码耦合性 9、项目代码的编写,处理线上问题,及JVM调优 10、优化分布式锁 11、利用网关实现灰度发布

0
2023-04-03 05:53
更新于: 2023-02-12 浏览: 187