一份工作一年半的java开发个人简历,欢迎拍砖_java一年工作经验简历-程序员宅基地

技术标签: 面试之路  java  后端  开发语言  

一份个人简历,大四提前一年出来实习,在12306。

2020年毕业,开始第二份正式工作。

从大学毕业,只是我学习之路的刚刚开始。 

简历所写的内容都是真实的,一点水分没有。

欢迎拍砖,希望大家能够针对我的简历,提出一些意见。

深耕Elasticsearch,网关,JVM虚拟机,spring源码,多线程以及线程安全。

最感兴趣的是k8s,以及服务网格。这会是未来的学习方向。

个人意愿:经过一年半的对es的摸索,深入学习es,包括查看源码。未来想要到更大的平台做es搜索相关的内容。追求极限的写入,追求超大规模的集群,愿意去攻坚超大体量数据检索问题。

  所以想要认识更多有相同意愿的人,想要到更大的平台中去,能够集思广意,一起去追求极限,突破极限。 

第一版

  执意把内容压缩到一页,但是随着做的东西太多了。一页真的放不下了,下边还有第二版。

第二版

  本来是pdf,但是截图太丑了,直接把内容粘贴过来吧!第二版有三页内容,粘贴到这里格式已经没了。可以保证简历没有半点水分。

Java开发工程师-个人简历

个人基本信息

姓  名: 张帅星                                  学  历:  本科    

性  别: 男                                      专  业: 计算机科学与技术

出生年月: 1996-11                              教育经历:2016.09-2020.06

联系方式: 156-2147-3202                        E-mail: [email protected]                    

成   绩:TOP 10 %,两个学年获得校级二等奖学金

程序员宅基地:Angus_水的精神_程序员宅基地-开发经验,Elasticsearch,在人间凑数的日子领域博主     

        

掌握技能 

  • Java基础扎实,具备并发编程经验,熟悉JMM、线程通信线程安全、锁、原子类、阻塞队列、并发容器、线程池原理。清楚并发内容的实现原理。阅读过部分JDK源码。
  • 深入了解JVM虚拟机:内存模型、GC、垃圾回收算法、以及垃圾回收器(包括G1)。具有线上调优经验,熟练使用调试工具arthas,Jprofile。
  • 熟练使用springboot、spring、springMVC、mybatis框架,并且对spring框架源码有学习了解。
  • 熟悉微服务架构,dubbo 以及springCloud体系。
  • 对Elasticserch,logstash,Filebeat,kibana 熟悉。了解es读写原理,底层存储原理(lucene)。
  • 深入了解Elasticserch集群规划,具有es调优经验,阅读过部分源码,例如es中线程池、读写过程。
  • 深入了解网关技术,独立构建业务网关。使用gateway、nacos,sentinel。
  • 改造过阿里限流组件sentinel源码,具备一定的源码阅读能力和改造能力。
  • 熟悉Mysql存储引擎,索引,有sql调优经验,熟悉分库分表,熟悉 ShardingSphere
  • 熟悉redis应用场景,维护了redis高可用集群。
  • 熟悉MQ使用场景,熟练使用kafka,用作内外网穿透,作为数据中转,解决上下游速度不匹配问题。
  • 熟练使用Docker容器化技术、了解k8s。
  • 合理使用开发规约,写出简洁的代码。重构相关知识有所掌握,有过项目重构的经验。
  • 熟悉设计模式,有在工作中使用,来提高程序可扩展性和可维护性。
  • 熟悉linux环境,熟悉linux常用命令,熟悉shell脚本,维护搭建了十五个节点的Es集群。
  • 具备从官网以及社区快速学习掌握生产技能的能力。
  • 具备一定的文档编写能力,PPT汇报能力。两个软著。

工作经历

时间:2020.05 ~至今(一年)

单位:中国科学院信息工程研究所

职级:入职T2,现在T4(第一次评级,跨级升至T4)

 项目经验

中科院 十四亿级别物联网资空间测绘系统

功能模块:14亿物联网资源检索引擎子系统、业务网关子系统、用户中心子系统、预热子系统、系统审计及行为分析子系统、搜索提示子系统、防爬机制设计

项目描述:物联网资源检索系统,用来检索整个互联网中现存的可以检测识别到的设备,这些设备涉及到了15个大类,100小类。设备包括品牌型号版本,以及设备上存在的软件,软件的版本、品牌、型号、大类、小类。以及软件和设备存在的漏洞。存活的设备会附加上地理位置属性。支持根据设备和软件的各个属性以及地理位置的聚类分析。用于科研人员的研究,给做安全防御领域的人提供良好的数据支撑。

项目职责

  1. 负责项目整体设计包括以上全部模块,主导技术选型。保证服务各个环节的高可用。避免单点故障问题。
  2. 负责维护支撑十四亿物联网设备数据的搜索引擎,维护了15个节点的elasticsearch集群。
  3. 从零搭建elasticsearch集群,并解决集群安全通信,跨集群数据同步问题。通过双集群的设计,来保证服务高可用。通过心跳机制,来动态切换集群。解决了elasticsearch分布式搜索引擎的脑裂问题。通过副本和快照来保证数据不丢失。
  4. 负责elasticsearch搜索引擎的后续优化工作。在数据集从8亿增长到14亿,数据容量从2.5T到5T的情况下,通过对集群的升级及规划和索引合理拆分,将聚类检索的时间从10秒降低到了2秒、普通检索从5秒降到1秒以下。集群写入速度提升到了2w/s。
  5. 使用nginx作为流量网关,使用gateway+nacos+sentinel 搭建了业务网关。期间改造了sentinel源码,来支撑生产环境下,业务网关零停服情况下的动态修改限流规则的需求。通过改源码将sentinel规则持久化到nacos,实现限流规则从客户端到sentinel的dashbord再到nacos的闭环。对鉴权、限流、等公共能力进行了抽取。通过对公共能力的抽取,将网关下沉为公共服务,发挥组内技术优势,为研究所内其他开发小组提供网关技术支持。帮助其它组解决用户鉴权,限流,降级等问题。
  6. 借助于sentinel的限流,实现了系统调用的安全防护。借助于sentinel的热点参数限流,实现针对用户的限流。达到了防爬的数据保护目的。
  7. 使用logstash + elasticsearch + kibana,搭建了一套日志收集分析系统。通过在流量网关进行适当的改造,配合前后端传参的适当改造。实现了系统审计以及用户行为分析的需求。配合报警工具,来洞察系统的服务能力,及时发现问题并发送报警。在凌晨生成用户行为分析的报告,并进行推送,为系统更好的扩展优化提供数据支撑。
  8. 维护了redis集群,用于存放用户的登录信息,鉴权中心分布式token;用于预热子系统,通过用户访问的审计结果,将系统经常访问到的数据,以及请求花费时间较长的数据,进行缓存预热。达到系统去短板的效果,提升用户体验。
  9. JVM问题诊断,发现并解决内存泄露问题。参数调优,使系统处于最佳状态。
  10. 使用Docker + docker-compose来部署编排服务。

实习经历 

时间:2019.08-2020.05(九个月)

单位:12306(中国铁道科学研究院)

 项目经验

12306 商旅项目(上线)

开发时间:2019.11~2020.05

项目描述:12306 大客户商旅平台以 12306 互联网售票系统为基础,面向政府、大型国企和私企,开展

对公火车票、酒店、机票、餐饮、用车等业务。

功能模块:接入中心、预定中心、用户中心、订单中心、财务中心

项目职责:

  1. 财务中心的计费方案设计,平台内部对账核心模块。
  2. 使用 ShardingSphere 进行分库分表,并完成相关的测试工作。期间解决了引入ShardingSphere后,事物失效,以及无法插入数据的bug。
  3. 搭建Jmeter 分布式集群,进行压力测试

12306 空铁联运项目(上线)

开发时间2019.08~2019.11

功能模块:空铁联运产品大订单,火车票改签,火车票退票,平台结账对账

项目描述:中国铁路推出了和东方航空合作实现空铁联运,火车票同机票同时购买,给用户带来更好的

购买体验,智能提供一些好的空铁组合,给用户更多的选择。

项目职责

  1. 参与整体业务的设计;编写内网调度服务代码,编写 API 调用火车票微服务
  2. 完成灰名单功能
  3. 设计伪随机算法用于生成唯一订单号,并在服务器上进行压力测试,以及进行安全性测试。
  4. 支付回调。在做支付回调页面数据展示的时候,因为代码量比较多,为了方便维护,采用了生成器模式。
  5. 平台内部对账核心模块。

自我评价

  1. 有良好的团队合作能力、有较好的逻辑思维和空间想象力,能够独立负责项目,并协调组内成员完成。
  2. 酷爱编程,严格要求自己写出规范负责的代码。对技术有强烈的兴趣。
  3. 喜欢与人交流技术,乐于分享,有自己的技术博客,CSDN目前总排名3600,周排名2000左右。
  4. 独立解决问题的能力,能承受一定的工作压力,经历过几次技术攻坚和服务抢救。
  5. 具有强烈的自我驱动力。具有良好的新知识接接受能力,坚持每天3-4个小时的学习时间。

阅读过的书籍

基础类

《Java并发编程的艺术》《逆流而上》《码出高效》《web技术内幕》《实战JVM虚拟机》《深入了解JVM虚拟机》

调试类

《Java深度调试技术》

源码类

《spring技术内幕》《elasticsearch源码解析与技术实战》

代码规范类

《java开发手册》《代码整洁之道》《重构改善既有代码的设计》《设计模式精解》

容器化技术类

《k8s权威指南》

架构类

《高可用可伸缩微服务架构》《架构修炼之道》

官方文档

《Elasticsearch官网文档》《sentinel官方文档》《gateway官方文档》 《 ShardingSphere官网文档

 心怀一颗去大厂的梦,因为 那里有一群有共同愿景,喜欢折腾的人,同时我可以站在巨人的肩膀上。

 不过暂时只专注项目上线,专注眼前的工作。即使钱再少, 都无所谓的。

我才二十几岁,一切都只是刚刚开始!

路漫漫其修远兮,吾将上下而求索

  我有时候也会负责我们这里的后台开发的面试工作。

  所以对于简历,我发表一下自己的看法:见过比较多的简历,都是多页纸,我不确定我能看完它,因为面试只是和开发工作并发执行的,看简历的时间多了,工作的时间就短了,所以简历看不到亮点,直接就pass了,不会浪费太多时间在看简历上。

  我的简历采用的是三七分的模板,尽可能的把内容压缩到了一页纸上,使内容更加紧凑,不给面试官来带翻页的麻烦。三七分的模板左侧是个人信息相关的, 包括了教育背景,以及工作经历。右侧是跟技术相关的,包括了自己的技术栈,以及开发经验。开发经验的话是一个时间倒序,最前边是我的现阶段的项目。为了压缩到一页纸上,第二个项目描述就比较水了。相对来说,我的第二个项目只是陪衬,第一个才是能够体现我的工作能力的项目。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/star1210644725/article/details/116240519

智能推荐

编译原理:语法分析(下)_移进项目-程序员宅基地

文章浏览阅读5.8k次,点赞12次,收藏63次。一,LR分析LR文法LR文法: 对于一个文法,如果能够构造一张分析表,使得它的每个入口均是唯一确定的,则我们将把这个文法称为LR文法。LR(k)文法: 一个文法如果能用一个每步最多向前检查k个输入符号的LR分析器进行分析,则这个文法就称为LR(k)文法。 一般k=0或k=1就可以了分析程序:对所有的LR分析器总控程序都是相同的。分析表/分析函数:不同的文法分析表将不同,..._移进项目

Java程序员从笨鸟到菜鸟(十二)进程和线程详解_double count程序员-程序员宅基地

文章浏览阅读234次。1. 定义:进程(process):可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配的基本单位。线程(thread):进程中包含一个或多个执行单位。2. 进程进程的五种状态:创建:分配了PCB(Process Control Block)进程控制块,进程所需的资源未分配,进程还未进入主存,创建工作未完成。就绪:进程分配到了除CPU以外的所有必要资源,..._double count程序员

Mac下vue开发环境的搭建步骤以及新建项目_mac执行 npm i -g @vue/cli-init-程序员宅基地

文章浏览阅读671次。Mac下vue开发环境的搭建步骤以及新建项目一、Vue环境搭建cnpm是淘宝对npm的镜像,如果安装速度慢建议可以尝试cnpm1.安装Node环境和java需要安装JDK一样,vue也要安装Node环境查看node.js当前版本$ node -v安装方法参考node.js官网如何安装Node.js1.直接在官网下载安装包2.使用homebrew下载$ brew install node2.安装npm/更新npm新版本Node.js已经包含安装_mac执行 npm i -g @vue/cli-init

基于C语言实现的家谱管理系统_c语言家庭族谱管理系统代码-程序员宅基地

文章浏览阅读1w次,点赞2次,收藏38次。一、项目简介家谱是一种以表谱形式,记载一个以血缘关系为主体的家族世袭繁衍和重要任务事迹的特殊图书体裁。家谱是中国特有的文化遗产,是中华民族的三大文献(国史,地志,族谱)之一,属于珍贵的人文资料,对于历史学,民俗学,人口学,社会学和经济学的深入研究,均有其不可替代的独特功能。本项目兑对家谱管理进行简单的模拟,以实现查看祖先和子孙个人信息,插入家族成员,删除家族成员的功能。二、项目功能要求..._c语言家庭族谱管理系统代码

人脸识别-Android/iOS配置和安装_dlib android ios-程序员宅基地

文章浏览阅读843次。opencv、dlib编译和安装,Android - CMake编译、iOS集成opencv、dlib_dlib android ios

pyhton入门到头大(一)-程序员宅基地

文章浏览阅读149次。_pyhton

随便推点

Docker镜像的修改和自定义_如何改写docker镜像 aosapps/drone-sonar-plugin-程序员宅基地

文章浏览阅读1.7k次。一、docker镜像的更新(1)启动镜像,写入一些文件或者更新软件docker run -it 3afd47092a0e[root@44652ba46352 /]# ls(2)更新镜像docker commit -m="test update" -a="wangsir" 44652ba46352 wangsir/centos-test:7.4.1708sha256:7853e6..._如何改写docker镜像 aosapps/drone-sonar-plugin

练习题---acmcoder翻转数组-用Java实现_acmcoder怎么使用-程序员宅基地

文章浏览阅读273次。问题描述给定一个长度为n的整数数组a,元素均不相同,问数组是否存在这样一个片段,只将该片段翻转就可以使整个数组升序排列。其中数组片段[l,r]表示序列a[l], a[l+1], ..., a[r]。原始数组为a[1], a[2], ..., a[l-2], a[l-1], a[l], a[l+1], ..., a[r-1], a[r], a[r+1], a[r+2], ..., a[n-1..._acmcoder怎么使用

Hyperledger Fabric Node.js开发中如何使用日志-程序员宅基地

文章浏览阅读437次。Hyperledger Fabric Node.js开发中如何使用日志?本教程就来演示下如何使用hyperledgefabric node.js客户端日志记录功能。概述hyperledger fabric node.js客户端日志记录使用node.js winston 开发包。当node.js应用程序首次加载hyperledger结构包时,日志记录被初..._hyperledger fabric 测试日志

如何快速理解JDBC_小肥羊吖+csdn-程序员宅基地

文章浏览阅读519次,点赞7次,收藏7次。简单的理解JDBC用法大家好!JDBC简介如何使用JDBC总结大家好!这是我第一次写博客,其实之前也很想写一些东西,可是发现很多东西都不知道,在自学一段时间之后呢,发现有些Java的东西还是很好理解的。 我自己虽然也是一个小白,但是我明白那种自己敲代码的时候出错却找不到错误的感觉,所以我也想分享一下自己对JDBC的理解。嗯…大家觉得有点用的话点个赞呗!JDBC简介好了也不多说,先来介绍下JDBC吧!什么是JDBC?如果你的英文不错的话,其实很好理解,JDBC(Java DateBase Connec_小肥羊吖+csdn

Android开发工程师面试题之handler详解。android程序员,android开发面试资料,详解-程序员宅基地

文章浏览阅读1k次。Message:消息;其中包含了消息ID,消息对象以及处理的数据等,由MessageQueue统一列队,终由Handler处理Handler:处理者;负责Message发送消息及处理。Handler通过与Looper进行沟通,从而使用Handler时,需要实现handlerMessage(Message msg)方法来对特定的Message进行处理,例如更新UI等(主线程中才行)Messa

莫烦Tensorflow学习代码四(placeholder学习)-程序员宅基地

文章浏览阅读411次。import tensorflow._api.v2.compat.v1 as tftf.disable_v2_behavior()#当你想在run的时候输入input1 = tf.placeholder(tf.float32)input2 = tf.placeholder(tf.float32)output = tf.multiply(input1,input2)with tf.Session() as sess: print(sess.run(output,feed_dict={i

推荐文章

热门文章

相关标签