联系方式

  • 手机:18710849538
  • Email:ybxnice@gmail.com
  • QQ/微信号:395120985

个人信息

  • 易斌鑫/男/1993
  • 本科/西安电子科技大学/应用数学系
  • 技术博客:http://two8g.github.io
  • Github:http://github.com/two8g

  • 期望职位:JAVA开发工程师
  • 期望薪资:月薪12k
  • 期望城市:西安

工作经历

西安博创软件软件有限公司 ( 2014年7月 ~ 2017年3月 )

搜索系统项目

与另两位同事合作,研究图像识别模糊搜索算法,克服了搜索准确度问题,和Android前端一同优化图像上传速度及图像识别处理。 两个月后,由我搭建了Solr分布式搜索引擎,完成索引词典建设和LaTeX公式分词算法。同时为其它有搜索需求的项目快速提供搜索实现。此外,利用业余时间在Github上参与翻译了Solr使用指南。服务支撑最高100万日访问,搜索响应时间平均在200ms,搜索结果第一命中率达到65%,超过了部分优秀行业竞争对手。

在线视频服务项目

负责后台服务开发,使用Spring MVC,Thymeleaf,Mybatis完成服务开发,并与基础服务,APP客户端和WEB前端进行对接。为了缩短服务响应时间,使用Ehcache实现缓存加速,部署服务日志监控应用,实时监控用户访问情况,同时将WEB静态资源上传至CDN网络,改善用户体验。服务日PV达140w+,峰值达200w+。

“自由搭”生鲜O2O项目

与客户交流讨论了项目需求和开发流程,并与团队成员商讨明确了需要,分工和周期。项目中主要负责APP客户端后台开发。包括但不限于用户服务模块,内容展示模块,线上交易模块的REST接口。应对下单规则限制等需求变更,做出快速调整并实现。项目如期交付并稳定运行。进一步学习了Hibernate数据持久化框架和Swagger工具的使用。

自动化部署实践

为改善开发现状:新功能需要按计划上线,同时需要预留充足测试时间,开发人员希望服务快速部署和自动测试。搭建了内网Maven仓库。再处理这个问题时,搭建Jenkins自动部署平台,实现应用快速自动化部署。同时,使用开源GitLab搭建内部代码仓库,为以后源码共享维护和CodeReview做准备。学习并分享git-flow工作流和issue协作方式,使得责任明确及问题持续跟踪。并尝试采用GitLab-CI完成自动打包与自动测试。实现了包依赖的自动化管理,避免了出现手动启动错误类似事件。

服务日志监控系统项目

主动研究开源日志监控技术,使用ELK(ElasticSearch+Logstash+Kibana)组合框架,同时为了尽量不给服务器增加额外压力,采用轻量级的Filebeat将所有服务访问日志导入ELK系统中。然后针对Nginx 、Tomcat、Redis日志编写相应配置,进行日志过滤,在Kibana上添加各类监控数据图标规则。填补服务访问日志监控空白,异常排查工作简单安全。还可以随时通过Kibana的图表轻松查看服务运行状态和服务压力,使得及早发现异常,帮助快速定位异常原因。

内容转码服务项目

公司基于安全考虑,文本数据在部分场景下需要使用图像格式。还需要转为其它文档格式(PDF,DOCX)转换,同时需要提供公共API服务。针对图像问题,由于Html2canvas和PhantomJS的效果不尽理想,其中Html2canvas存在浏览器应用必要条件,PhantomJS的内存和CPU消耗太大。最终采用了Cutycapt+XVFB方案,其效果和性能最佳。由于累计工作量超过1000万。为了进一步提高效率,采用了多任务工作流的并发编程模式,使得每秒工作量达600。为了处理文档转码问题,对PANDOC(Haskell语言),Office XML和Xelatex排版系统进行了学习和实验,最终达到90%+的满意效果。


我的技能

  • 开发:JAVA/OO/AOP/SOLID/Shell
  • 框架:Spring/Spring MVC/Thymeleaf/Hibernate/Mybatis/Dubbo
  • 数据库:MySQL/Redis/Solr/
  • 工具:Git/Jenkins/IDEA/Swagger
  • 平台:阿里云ECS,微信开发平台

自我评价

  • 热爱学习,喜欢开源,充满好奇心
  • 喜欢阅读技术书籍和博客,喜欢分享讨论
  • 喜欢鼓捣源码,追求优美的代码