编程语言 :
精通Java,C++语言;对Java底层NIO、多线程、泛型、反射、Annotation有深刻的理解。
设计方法 :
熟悉面向对象的系统设计方法和常用的设计模式。
熟练使用UML及相关工具(EA,VISIO)应用于系统设计。
熟悉微服务系统架构基本原理、熟练掌握Docker虚拟主机的构建与部署。
分布式系统:
熟悉分布式、高可用、消息中间件、WebService等企业应用技术。
熟悉Spring、Structs、Spring Boot开发应用框架。
熟悉LVS和Ngnix负载均衡技术。
熟悉Thrift、ProtoBuf、ZeroMQ、RocketMQ等消息中间件技术。
熟悉 HDFS, MooseFS等分布式数据存储技术。
能够利用上述技术设计和实现具有高并发、高性能、高可用的大型分布式应用系统。
数 据 库 :
熟悉主流RDBMS和NoSQL数据库(MySQL, SQLServer, Memcached, Redis等),以及数据库编程(SQL, JDBC, Hibernate, JPA,EF等)。能够基于数据库灵活、高效地设计和编写出满足业务需求的SQL和相关表结构,实现读写分离、分库分表。
开发工具 :
熟练使用Eclipse、STS、IntelliJ等IDE开发工具。
熟练运用SVN、GIT版本控制工具进行项目的配置管理。
熟练运用Maven、Ant构建工具进行项目的构建。
熟练运用GNU Make和CMake进行项目的构建。
熟练应用Tomcat、Apache等服务器进行Web应用的部署。
操作系统 :
熟悉Linux操作系统及其环境的编程技术。熟悉Linux下的脚本编程(Shell,Perl,Python)。具备Linux系统下分布式服务器环境的安装和部署能力。
网 络 :
熟悉TCP/IP协议,HTTP协议规范。熟练使用高性能NIO网络框架Netty应用于TCP/UDP服务编程。
所属公司:
项目描述: 家园互动项目提供给红缨教育集团的一款APP用于幼儿园老师与家长之间的沟通与互动。提供安卓和IOS两款客户端APP。
责任描述: 负责后台应用服务开发,主要工作包括:
1. 后台服务器的架构设计与关键技术的选型。确定服务器框架如下:
WEB应用框架选用Spring + Struts2,前后端基于Restful WebApi进行访问,格式使用JSON
数据访问层使用JPA + Hibernate,数据库使用MySQL,应用与数据库之间使用Memcached进行数据缓存。
应用服务器使用Tomcat。
消息推送和聊天服务基于TCP的长连接,使用Netty以支持大规模并发。
WEB应用服务与消息推送服务间采用UDP协议进行通信。
2. 根据技术选型,配置和构建项目,实现基本软件框架。
3. 实现用户管理(用户注册、登录、登出、密码找出、短信验证等)、学校管理、教师管理、通知管理、通讯录管理功能。
4. 搭建家园互动云平台环境。使用阿里云的相关产品构建的分布式服务系统。
5. 该款APP最终成功推广红缨集团下近50所幼儿园。为近万老师和家长服务。