2019面试篇

前言:面试准备记录

又是面试季

积累后的自己究竟有多少能力呢?拭目以待

项目总结

  • sport
  • com
  • mini
  • office
  • other

体育网

公司第一个项目,从0到1,包括需求分析、数据库设计、框架搭建,使用前后端分离,前端vue,后端laravel。

项目模块有用户管理、赛事管理、报名管理、订单管理、支付、退款、消息

官网

接了频道页重构、搜索重构

小程序

搜索、频道页

后台

公司试用期写了帮助中心,体育网后台包括赛事管理、报名管理、订单管理、支付、退款,官网包括板块配置、大型活动,小程序包括广告管理、目的地管理

其它

ElasticSearch使用、swagger文档、Docker

总结

以上是工作概要,自己认为出彩的地方主要有:

  1. 在对频道页进行重构的时候,抽离了各个类的共性写成一个接口,子类实现接口负责自己的实现,减少必要的代码编写,同时提高可读性和复用性
  2. 搜索重构方案为ElasticSearch+ik中文分词,使用定时脚本进行es库维护,确保数据一致性
  3. 使用Docker为项目组编写一套统一的PHP开发环境,避免了项目的环境兼容性问题
  4. 使用Swagger编写注解自动形成文档,与前端人员和测试人员更好的协调
  5. 多处读操作频繁但是更新操作少的地方使用Redis进行缓存,增加响应速度
  6. 使用redis作为队列进行异步发送消息、邮件、短信,提高用户体验

简历总结

  1. 可以看一些简单的vue和react代码
  2. 对PHP的底层数据结构和垃圾回收有所了解,熟悉设计模式并用作项目中,使用go语言写过爬虫
  3. 研究过laravel的源码,服务容器是精华
  4. 对mysql引擎、锁、事务、索引有一定的了解,会使用explain和show profile优化sql
  5. redis多使用在缓存和队列
  6. 会源码搭建lnmp服务环境和一定的调优,会使用nginx负载均衡和反向代理
  7. 使用docker编排了一套开发环境
  8. 使用过ElasticSearch开发搜索业务
  9. 开发过微信公众号和微信小程序
  10. 对http协议、tcp协议有一定的了解