ID:167583

雪饼

高级后端工程师

  • 公司信息:
  • 亚信科技
  • 工作经验:
  • 2年
  • 兼职日薪:
  • 500元/8小时
  • 兼职时间:
  • 周六
  • 周日
  • 可工作日远程
  • 所在区域:
  • 南京
  • 全区

技术能力

1.熟练使用Spring boot和Spring cloud,能独立搭建Spring cloud微服务架构,在此基础上熟练集成Mybatis、搭建Eureka集群,解决分布式中的常见问题,如Session共享,熟悉Spring cloud微服务间的通信机制、负载均衡Zuul、断路器Hystrix;
2.Nginx的反向代理和负载均衡策略的配置,Https化(SSL证书的安装);
3.熟练掌握Sql基础语法和部分高级语法,熟悉Mysql数据库,orm框架中最为熟悉的为Mybatis,对分库分表还有主从复制、读写分离有一定的了解,了解并使用过Redis、Mongodb等Nosql,使用过H2;
4.数据结构基础扎实,阅读过Java集合类的源码,对Map、List、Set较为熟悉;
5.有一定的算法基础,熟悉九大排序算法,毕业设计为盲水印算法;
6.了解JVM的内部构造及JVM参数;
7.熟悉BIO、NIO、AIO,对于synchronized、volatile关键字较为了解,熟悉JMM以及相关的线程安全;
8.熟练掌握Python语言,熟悉以其为基础的接口自动化测试,页面自动化测试也有简单的尝试(selenium);
9.熟悉持续集成,最熟悉的工具为Jenkins,能独立进行Jenkins在服务器上的部署及对项目的持续集成(打包、编译、部署、测试),较为习惯脚本方式;
10.熟练使用Maven,熟悉其各种插件,可以减少不必要的jar的重复编译和部署,利用它实现不同环境的配置打包部署和上下文切换,也有Gradle的简单使用经历;
11.熟练使用Git,熟练利用其分支、补丁等特性进行版本控制,对开发-测试-沙箱-生产的工作流程和git相结合进行代码的版本升级、回退有一定的经验;
12.熟练掌握Linux基础命令,对于项目发布部署的环境配置较为熟悉,经常独立排查服务器错误,对常见错误有一定的排查经验;
13.了解主流数据库事务和Spring的事务,对于嵌套事务和分布式事务也有一定了解;
14.对Spring框架特别熟悉,了解其各项特性,xml配置方式和注解配置方式极为熟悉,了解spring容器启动的基本原理和bean的各项配置;
15.熟悉elk日志组件,独立部署过elasticsearch以及相关插件,熟悉其在java中的使用以及其特有的表达式;

项目经验

项目名称:物联网IOTGATEWAY
项目简介:此项目甲方为中国联合网络通信集团有限公司(简称“中国联通”),乙方包括天源迪科、东软集团、亚信科技,本质上为能力开放平台,上游对接物联网应用层,我司项目开发共分为两期,目前项目一期已经交付并上线,一期项目开发经费为720万。
开发环境及技术:IntelliJ IDEA、Spring Cloud、Mysql、Redis、Rhino、Mybatis、Cas、Shiro
项目描述:此项目前端使用vue.js + Bootstrap ,选取Spring Cloud作为后端基础的微服务架构。
根据用户群体可划分为能力门户和运营门户,能力门户开放到公网供企业级用户访问浏览,运营门户为内部运营人员使用。
根据业务拆分为八个模块,包括单点登录、权限控制、能力门户Web、运营门户Web、能力管理、报表账单、短信验证码、定时任务。所有模块统一注册到Spring Cloud的Eureka中心,通过Http通讯完成不同模块的交互。
其中能力门户Web、运营门户Web作为分布式架构中的表现层,其余模块皆有独立的业务层和数据访问层,业务层分为Function(功能)层和Business(业务)层,对其它模块统一暴露为功能层,功能层中做参数校验、参数提取、异常处理等通用化操作,调用业务层,业务层处理更为细致的业务逻辑,并调用数据访问层将业务数据持久化到数据库。
数据访问层使用Mybatis(Spring Boot版),数据库为Mysql 5.7。数据库设计中拆除了所有外键,业务关联皆通过第三方表,数据删除统一为软删除(字段标识),不使用浮点数(统一使用整型如有需要将其在Java代码中转换),数据库主键非mysql自增主键统一使用独立的一张表维护。数据库引擎为支持事务的Innodb,Java代码中使用Spring事务,支持声明式事务和编码型事务。
日志使用Spring Boot自带的log4j,日志输出目录和日志级别都有严格规范。
项目实际共有四套环境——开发、测试、沙箱、生产使用Git进行版本管理,严格按照开发->测试->沙箱->生产的流程进行迭代有效地保障了项目生产中客户的使用。
项目发布使用Jenkins进行持续集成,极大简化了发版工作。在项目后端使用了python进行接口自动化测试,在持续集成中项目发布后会自动对后台接口进行单元测试。
工作内容:
1.开发人员,开发了大约三十多个接口并将其以Restful形式提供了出去;
2.自动化测试工作管理,使用Python进行自动化测试,并教授其它同事编写Python测试脚本,随后以统一入口方式集成并将测试结果以Html展示;
3.JavaScript脚本编写,发布在我们项目中的能力的业务逻辑更新迭代较快,因此核心业务逻辑以JavaScript脚本完成(可在页面配置),故对于需要升级的能力需要编写JavaScript替换原有逻辑,本人处理编写脚本以外,还负责该块工作的分派、监察、整理和汇报;
4.服务发布和故障排查。


项目名称:红包
项目简介:本项目甲方为中国联合网络通信集团有限公司(简称“中国联通”),乙方为北京天源迪科信息技术股份有限公司(我司下辖全资子公司),一期投入40人,项目经费为1200万,目前开始进行二期,二期预计投入69人,预算三年内完成五期,项目经费为5000万。项目两周一个迭代,采用敏捷开发的的模式,分为四个敏捷小组。
开发技术:Spring + Mybatis + HSF(淘系RPC框架)、阿里云数据库、Redis、阿里消息队列、kafka、阿里OSS存储
项目描述:项目分为四个模块,电子券、kafka业务、渠道运营、存量运营
本人分属于存量运营,但其他模块的部分开发亦有涉及。
在架构师指导下使用公司内部封装jar搭建项目架构,分为公共基础模块base、工具模块took-kit、对外服务模块unified-jump、定时任务模块task、核心业务模块stock,每个模块下又分为function(功能)层api、function(功能)层实现、busi(业务)层api、busi(业务)层实现、jar版本管理模块、service(服务)层、web层。其中service层为服务统一集成,将功能层和业务层服务集成并统一暴露为HSF服务,web层为Http调用入口,通过hsf调用service层服务。
日志严格区分,通过切面将业务层、功能层、MQ相关、切面相关、定时任务的日志以及它们错误的日志都输出到不同文件,使日志更为规范化且十分有利于后期排查错误。
数据库使用阿里云数据库DRDS(其自带分库分表),按照功能进行分库,分为交易库、业务库、权限库、配置库,主键统一使用阿里数据库自带序列。
文件存储使用阿里OSS。
异步处理使用阿里消息队列RocketMQ,支持实时消息、延时消息、定时消息、事务消息、顺序消息,且阿里提供了一系列配套运维工具,如消息查看、消息验证、位点重置等。
Redis用于并发处理、分布式信息处理等。
定时任务使用当当网的elastic-job(会依赖于Zookeeper),项目中使用的是lite无中心化版本,有可视化的管理页面。
项目发布使用Jenkins进行了持续集成。
工作内容:
1.开发小组长。当前版本开始(上一个版本上线结束)时参与需求分析进行功能拆分,分配开发任务,并进行代码版本分支管理以及上线checkList(上线配置如sql、topic、nginx、外网配置等)准备,统一管理开发组员与外围系统人员的联系;
2.开发人员,负责存量运营各个模块的迭代优化和新需求的设计与开发,需求少时会参与其它模块的编码;
3.负责研发环境、测试环境的搭建以及负载的配置和持续集成的配置,处理环境问题如maven私服、maven打包失败、项目启动异常等;
4.生产环境的问题定位以及人工补救的措施;

信用行为

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

发布任务

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

微信接收人才推送

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

接收人才推送
联系需求方端客服
联系需求方端客服