求职意向
Java开发工程师 广州、东莞、深圳 薪资面议 随时到岗
教育背景
2020.x -2020x 锤子简历大学 计算机科学与技术
本人在大学四年学习了计算机的软件和硬件的大部分基础知识,对java是最感兴趣的,投入了很多时间去学习,对其面向对象的编程有一定的了解,已通过全国大学英语四级,具备一定的英语基础。
工作经验
2020.x -2020x 锤子简历信息技术有限公司 java研发工程师
1、与电信、联通nbiot模块通讯项目
项目描述与职能:对接中国电信和联通的nbiot项目,控制系统与设备进行数据收发异步交互,这里使用了多线程编程,主线程进入主要方法后, 通过异步多线程来提升程序处理并发的能力和处理速度,同时线程池回收使用完的线程,维持程序的正常运行
2、netty建立服务器与设备使用4g模块进行通讯项目
项目描述与职能:与公共澡堂中继器进行通讯交互的数据链路层服务器,不做任何逻辑处理,只进行数据收发,用的是tcp/ip的通讯协议,项目主要是对每个设备的数据进行日志分类,大数据量的日志定时压缩和删除, 以及在程序中如何嵌入netty的框架,以服务的形式运行。
3、公共澡堂项目
项目描述与职能:公共澡堂的业务逻辑处理,主要业务处理是使用账户的下发,消费数据如何处理,其中把高并发数据都放到缓存中,减轻数据库访问压力。
4、用户信息中心项目
项目描述与职能:对接支付宝、微信还有其他学校电子校园卡的用户信息对接,学生信息存储到pgsql数据库和memcache缓存,使用配置文件分类获取各个学校的学生信息
5、支付宝洗澡小程序项目后台
项目描述与职能:对设备进行洗澡开关阀授权控制,学生信息从设备上扫码传到后台,后台通过缓存信息获取到用户的钱包金额和未完成订单, 通过结算未完成订单和判断使用金额来控制设备授权开关阀
6、rabbitmq中间件程序
项目描述与职能:使用rabbitmq中间件存储高并发的订单消费数据,在开发过程中考虑了并发需要配置rabbitmq线程池的数量,明白路由模式的使用场景。
2020.x -2020x 锤子简历信息技术有限公司 java研发工程师
1、胜网快速开发平台
项目描述:胜网快速开发平台的设计原则是为了学校能够在网络上进行校园管理,方便教师讲课和与学生互动教学。有教学资源管理、白板讲课管理、直播教学管理、ppt讲课管理、工作流管理、百度编辑器管理、网络硬盘管理、实时聊天管理、组织管理、学校注册管理等模块,涵盖了spring、mybatis、dubbo、shiro、activiti、activemq、redis、
angular4等技术框架。
担任角色:
● 组织管理模块和学校注册模块由我负责。组织管理模块是系统的骨干,在mybatis中执行sql语句来实现组织管理的学校、部门、人员、资源互相关联,从而熟练了sql的写法,并掌握了权限树和各种关联关系的用法。
● 权限控制是通过个人成功登录系统后,将个人的所有可访问的url链接封装为set集合,并以32位jsessionid为键存放到集群的redis中,前端访问后台就要用这个jsessionid,设置该用户的权限信息在redis中的生命周期为30分钟。配置dubbo的拦截器,拦截除了注册和登录以外的所有访问url,若url不匹配于对应用户的缓存权限信息中则返回无权限访问,匹配则可以正常访问并刷新该用户的缓存权限时间,登录后30分钟没有访问后台url,再次访问时返回用户登录超时。
● 用spring的aop(切面编程)和多数据源切换的方法使得系统读写庞大的组织数据更快,系统的性能更好。
● 学校注册模块需要每注册一个新的学校,在胜网内部审核通过后,就对服务器中存放的前端文件、后台jar包文件和数据库都复制一份,并以学校注册时的英文名为新名称。使用文件流的操作实现新建文件夹、新建文件;调用exec命令行的方法实现快速复制文件、删除文件等等文件操作。每个jar包里的配置文件的数据库名和dubbo端口都要修改,所以用清单文件的方式解压jar包,用dom4j来修改解压后的配置数据库和dubbo端口访问的xml文件,实现了数据库的动态变换,也防止了dubbo访问端口冲突。最后调用exec命令行使用unzip命令压缩jar包。动态修改nginx里的配置,实现动态域名。
● 因为要动态生成和切换数据库,所以在学校注册模块用到了jdbc编程,先执行生成数据库的sql,再切换到新生成的数据库,执行导出的数据库模版sql,实现动态生成数据库。
2、汽车管理系统
项目描述:使用微服务框架spring boot开发的汽车管理系统,模块包括店员管理、汽车管理、资金管理、订单管理、维修物品与车辆管理模块管理。引用spring AOP以controller为切点,异步记录操作日志并保存数据库。
担任角色:
● 我负责的模块有汽车管理和订单管理模块,车辆和订单之间是多对一的关系,在mybatis的mapperx.xml文件中写sql就可以轻松解决。
● 熟悉了spring boot这个框架,配置简单,直接main函数启动,而且内置了tomcat,不再需要打包成war包再部署,节省了时间。而且与其他主流框架能够很好的兼容。
● 做了多字段的汽车的模糊查询,以便汽车能够更好更快的被搜索出来。
● 使用jquery编写前端,熟悉了css、html、jquery等,同时也学习了一点angular基础。
● 和其他团队成员配合工作,处理项目中的关联关系,写接口文档。
2020.x -2020x 锤子简历信息技术有限公司 java研发工程师
1、oa办公自动化系统:
项目描述:oa办公自动化系统顾名思义就是协助公司办公的系统,主要作用是管理公司人员和处理其日常事务。有系统管理、部们员工管理、公司请假管理、公司报餐管理、外出办公管理、加班管理等模块。
担任角色:
● 主要负责的模块有系统管理、部门员工管理、公司请假管理、公司报餐管理等模块,因为负责的模块是公司的人员管理,所以需要协助其他开发人员进行共同开发。
● 搭建公司的基础架构,持久层使用的是hibernate的jpa标准实现,配置hibernate注解的扫描,方便开发,数据源利用的是springIoC注入;模型层严格按照JavaBean规范要求;用spring mvc进行流程的控制。
● 系统管理模块和部门员工模块都使用到了shiro安全框架,shiro框架整合到spring中需要配置realm,配置身份验证和授权,拦截器,会话等等。如果有多个角色的,可以配置多个realm实现多角色分开验证。
● 部门员工模块的员工管理用到了poi导入导出execl,实现网络数据呈现到现实中。
● 公司请假管理用的是activiti工作流引擎,首先要根据实际情况画出bpmn流程图,请假流程图的节点都应该具备审核通过和不通过两个条件,不通过时要填写驳回理由,并驳回到上一级,驳回时使用springmail发邮件通知,结合activemq防止断网情况,保证邮件发送成功。写好流程图后就可以部署流程图,启动流程。
● 公司报餐管理也是用的activiti工作流引擎,步骤和上面差不多,而且也用到了activemq(消息队列),用于解决在准备用餐时间时数据请求量太大,导致服务器奔溃。activiemq原理是将请求放到中间件中,再通过b系统处理,就能缓解短时间内高流量压垮应用。
自我评价
我热爱互联网技术,特别是java,平时有空的时候都会去github、开源中国、it社区等大网站浏览和学习最新技术,随时充电。
大四到现在做过三份java研发的工作,大大的提高了我解决问题的能力,不止体现在学习的知识方面,还有团队能力和沟通能力,做的项目有的要和前端交接,有的要和运维互相配合,每次我都会积极的把自己的理解和想法提出来,也会倾听他们的意见,以更好更快的去解决问题。以后希望往产品设计的方向发展,更好的提升自己。
希望贵公司能给个机会,以便深入了解。
内容来源说明:本文章来自网络收集,如侵犯了你的权益,请联系QQ:2772182309进行删除。
https://www.100chui.com/article/60119.html