Appearance
个人资料
- 姓 名:唐敦旺
- 性 别:男
- 学 历:全日制本科
- 工作年限:12 年(8 年前端开发经验)
- 职 位:前端开发工程师
- 期望薪资:20k
- Phone: 13632122984
- Email: tangdunwang@gmail.com
- GitHub: https://github.com/tangdw
- Site: https://tangdw.deno.dev
专业技能
- 熟练掌握前端基础知识(JavaScript、CSS3、HTML5),能够独立完成前端项目,具有丰富的 PC 端和 H5 页面开发经验
- 熟练使用 React 和 Vue 框架及其生态库,能够独立完成项目搭建和项目部署,熟悉相关框架原理
- 对前端工程模块化有一定理解,熟悉 webpack、vite 及其常用配置,可以从 0 到 1 独立搭建项目。全程使用 TypeScript 进行代码编写,类型结构定义清晰,尽可能地减少 any 的使用,代码的可读性和可维护性高
- 掌握 Node.js 的 BFF (Backend For Frontend) 端开发,了解 Next.js 框架
- 对于老旧的前端框架也有一定的经验(如 jQuery 和 Angular.js 1.4.x)可以维护相关技术栈的历史项目
- 具有良好的学习能力和解决问题能力,利用 ChatGPT 解决工作中遇到的问题,能够快速适应新技术和工作环境
工作经历
深圳市明源云客电子商务有限公司 | 前端开发工程师 | 2019.07 - 2024.03
业务中台组 | 2021 - 2024
项目中心
- 随着后端由大单体服务到 grpc 微服务的重构,本项目也由旧的 Angular.js 1.4.x 技术栈重构为 React 技术栈
- 独立负责项目的搭建、开发、部署
- 解决技术难点:项目中有一个业务需求是在一张车位平面图上标注车位的坐标以及关联车位数据,实现的功能点如下:平面图的旋转、缩放、拖动,标注点的多选、对齐、等距、复制粘贴、撤销/重做
- 积极学习优秀的开源技术并引入项目提升开发效率,例如使用 react-query 获取和管理服务端数据,使用 zustand 替代 RTK 进行客户端状态管理
- 响应公司“向 AI”战略方向,接入公司封装的 gpt api ,使用 fetch 请求流式 api 实现了类似 chatgpt 聊天框功能,帮助用户在编辑项目亮点时进行文案的润色
- 负责 grpc 客户端(使用 node.js 服务,公司自研的基于 koa2 + routing-controllers 封装的框架)主要工作包括 grpc 接口转发、聚合、鉴权、excel 导入导出等
- 技术栈包括:TypeScript + react + react-router + react-query + zustand + immer + antd + vite
消息中心
- 技术栈同上
- 独立负责项目的搭建、开发、部署
- 参与组内 DDD 事件风暴,了解事件风暴流程
运营平台组内工具平台
- 技术栈同上
- 独立负责项目的搭建、开发、部署
- 该项目是一个 qiankun 微前端子应用,接入到公司的微前端基座,用于开发帮助运营同学提效的一些内部工具
房产营销 h5
- 项目包含房贷计算器、提前还款计算器、购房资格测试等一些用于房地产项目营销的工具,作为移动端 h5 嵌入到其他业务组的小程序/App 内
- 独立负责项目搭建、开发、部署,其中房贷计算器的算法是从 github 上搜索到的源代码进行阅读理解之后封装的方法,还封装了调查问卷答题组件
- 技术栈包括:react + react-router + antd-mobile + zustand + immer + vite
业务中台开放 api 服务
- 该项目是一个 node.js 服务,用于转发、聚合后端 grpc 服务 api 开放为 http 接口,采用公司自研框架(基于 grpc + koa2 + routing-controllers),封装了鉴权、安全(防重放、防篡改)中间件/装饰器
接手维护离职同事的项目
- 租户用户中心:react 技术栈,是用户中心的后台管理系统
- 支付收银台 h5:react 技术栈,对接银联/微信支付,嵌入其他业务组的小程序/app 以提供支付功能
- 房源中心:该项目属于一个有着 8 年历史的超大单体仓库,基于 jQuery + Angular.js 1.4.x + webpack 技术栈,并涉及多个业务组的业务,房源中心属于其中一部分。随着业务的变化仍然会有开发需求和排查历史逻辑的任务,Angular.js 1.4.x 版本还没有 component 功能,是通过指令封装类似现在的组件功能
活动中心组 | 2019 - 2020
活动营销 h5
- 活动中心前端项目主要有两个,分别是 B 端后台管理系统和 C 端活动营销 h5,项目启动时由我独立负责活动营销 h5 项目从技术选型、项目初始化到项目部署上线
- 前端技术栈包括:typescript + react 及其生态库(antd-mobile + rematch + immer + react-move),项目脚手架采用 create-react-app 配合公司的 webpack plugin (获取部署域名和路径)
- 公司后端采用 grpc 微服务只提供基础接口,前端还要负责 bff 层,使用公司自研 node.js 框架(基于 koa2 + routing-controllers 封装)主要作用是转发或者聚合后端提供的接口、用户身份认证
- 项目模块包括:刮刮卡、砸金蛋、老虎机、九宫格等抽奖活动,投票、拼团活动
- 难点在于动画效果的实现,考虑到轻量化和性能选择了 react-move 实现数据驱动的动画效果
广州棒谷网络科技有限公司 | 前端开发工程师 | 2017.03 - 2019.07
负责跨境电商 h5 开发 https://m.yoins.com
- 原站基于 jquery 搭建,在熟悉整站页面架构后,与产品、设计、后端同学成立敏捷开发组,对网站 UI 视觉、前端代码进行重构,完全迁移到基于 vue/vuex/vue-router 的 SPA 单页面架构
- 主动推进项目进度,高效完成了整个项目的开发和上线,上线初期从旧站逐步引入流量,协助产品分析 GA 数据,持续优化 UI、前端性能直到转化率大幅提升才切入 100% 流量
- 制定开发文档、项目规范、Gitflow 工作流让新同学能快速参与业务需求迭代
- 沉淀出一些技术方案并推广到公司其他站点,比如:i18n 方案,小语种域名设计,PWA 方案,SW 缓存策略,SEO 优化,各种推广(fb、ga、联盟)统计
协助优化另一个移动端站点的开发流程、前端性能 https://m.banggood.com
- 搭建基于 vue-cli3 的多页面开发架构,开发 webpack Plugin 实现一些自动化处理,比如模板处理、前端资源发布等
负责搭建 solr 搜索系统后台
- 项目架构基于 vue、element-UI 的单页应用,对接公司其他系统的单点登陆功能,设计角色权限系统
- 基于业务抽象出一套表格、表单配置化组件,通过 JSON 配置即可完成大部分简单需求
- 沉淀了一套基础的中后台项目模板
负责运营后台系统持续需求迭代
- 项目基于 vue、element-UI 的单页应用,对接多个电商前台站点
- 简单表格、表单使用 JSON 配置化完成需求
- 即使是内部项目也不仅仅是满足“能用”,会实现一些动效、拖拽等,追求更好的用户体验
广州博盾信息技术有限公司 | 前端开发工程师 | 2016.04 - 2017.03
- 负责运维管理系统开发,主动和产品沟通需求并推进项目进度直到成功交付
- 熟练掌握 Vue 框架及其相关技术栈(vuex/vue-router),熟练运用 Element-UI 组件库
广州正海科技开发有限公司 | 自动化工程师 | 2013.05 - 2016.02
- 负责广汽本田涂装车间生产管理系统(PMS)、能源中控系统(CCR)开发和维护
- 生产管理系统(PMS):采用 ASP.net、MSSQL 开发的实时监控系统,监控输送链生产状况、异常报警。协助项目经理编写投标技术方案,了解客户需求
- 能源中控系统(CCR):采用 VB6、Access 开发的 windows 桌面软件,用于收集生产设备的能耗数据,并生成相应的统计报表
- 用户培训和技术支持,帮助客户理解和使用系统
广东天安工程监理有限公司 | 监理工程师 | 2012.06 - 2013.03
- 电厂项目施工管理
教育经历
武汉大学珞珈学院 | 电气工程与自动化 | 本科 | 2008 - 2012
- 主修课程:电路、电机学、模拟电路、数字电路、C 语言程序设计、微机原理及汇编语言、单片机基础、PLC 程序设计、电力系统自动化、电力电子基础、matlab 仿真
- 获得英语四级、计算机二级证书
- 毕业设计:一次调频评价指标的研究及软件模拟仿真