个人介绍
工作经历
2014-04-01 -2016-10-01腾讯高级前端工程师
主要负责代码组建的封装,项目的代码重构,整体架构搭建,逻辑代码实现,以及常用业务功能插件编写,保证产品质量/性能表现,和每周的技术分享会
教育经历
2010-09-01 - 2014-06-01中南大学软件工程本科
曾在校学习HTML+CSS,数据库设计等课程学习
技能
作品描述:此作品为尚品宅配的网上官方商城,为装修客户提供一站式全屋家具定制、整体家居解决方案。 技术描述:此作品为重构项目,之前项目是以纯原生js+HTML+CSS编写,且前后端未分离。后续运用VUE+webpack+HTML+CSS来重构,本人主要负责项目前端架构重构,并封装主要功能。
负责产品的系统架构以及产品按时交付,主要的开发工作在服务器、Web 端,Web 图形以及移动端的技术栈迁移。产品各个模块涉及的技术栈大致是这样, 1. 服务端主要基于 Node.js,前端业务接口+后端工作进程方式。使用 Express.js 作为Web Server路由层,实时通讯使用 Socket.io,业务层语言使用 ES6 以及 NPM 作为包管理,MongoDB 作为存储与消息中间件,部署监控使用 PM2,反向代理使用 Nginx,支持多进程以及多物理机横向扩展。一般部署环境是 CentOS 7、阿里云等。使用服务与第三方服务进行集成。后端工作进程对上传的模型文件做预处理以及文档格式转换,属于CPU 密集型的计算任务,一般是隔离部署在多台服务器上,使用 MongoDB 进行进程间集成。 2. 前后端通信主要是RESTful风格的API;通信协议为HTTP(S),WebSocket;数据格式主要是JSON+Msgpack(多用于buffer)。 3. Web端主要使用ES6, HTML, CSS, AngularJS, WebPack, Babel;Web端图形主要基于Three.js,显示建筑三维模型。 4. 移动、智能设备端(iOS,Android)主要基于Native开发,17年有做过React Native迁移尝试,主要目的是减少技术栈规模,部分前端业务能多端共用,降低团队学习成本以及整体代码量。 5. PC端主要使用Qt/C++,除了正常的业务逻辑外,大量的模型效果演示都集中在PC端。