个人信息
- 崔欣/男/1993
- 学校/常州工学院
- 工作年限:9年
- 期望职位:前端工程师
- 期望薪资:面议
联系方式
- 手机:17601518773
- 邮箱:cuixinjob@126.com
- 微信:Lecooe
- 博客:https://cuixinxin.cn
- Github:https://github.com/jiaopianjun
- 公众号:执行上下文
自我评价
1、参与主导了多个PC端、移动端和小程序项目的从0到1开发过程,积累了丰富的双端开发经验,并且对于双端的性能优化有着深入的理解和实践经验。
2、主要技术栈为Vue,具有大量的C端、SaaS管理后台、uni-app、小程序、H5等项目经验。同时也具备Electron、React、Angular等其他前端框架的实际项目经验,能够根据业务场景灵活选择合适的框架进行底层架构和开发。
3、熟练使用代码管理工具,如Git,能够高效地进行团队合作和版本管理。熟悉常见的前端UI框架和前端工具,能够快速高效的应用在实际工作中。
4、在工作中,经常参与产品定型和业务场景的讨论,能够积极提供技术方案和建议,并推动技术的落地。能够很好的协调前后端、产品设计测试之间关系,按时推进项目进展,保证项目高质量按期交付上线。
5、喜欢探索和学习新的知识并乐于在团队中分享以带动大家的成长,具有强烈的责任心和团队配合意识。
6、生活中乐观开朗,喜欢新鲜事物,能够快速融入团队。
工作经历
苏州易来科得科技有限公司 ( 2023年9月 ~ 至今)
负责公司LIFE和BDA等SAAS平台的研发工作、测试工作以及整体进度的把控。
电池老化机理解析与寿命预测平台-LIFE
项目背景
LIFE是一款负责仿真分析电池长期性能的软件,基于老化寿命的机理模型开发,旨在帮助用户评估和预测电池老化机的性能和寿命。能够通过分析电池的各种参数和历史数据,可以快速准确的计算各类电芯的老化程度和使用寿命。
项目技术栈
Vue3 + Ant-desgin 等
项目职责
1、主导项目 2.0、3.0 及后续版本的前端开发工作。
2、积极与后端、算法端、项目端进行需求沟通,合理分配各方开发时间。确保前后端开发、算法、项目之间的信息互通。同时与 UI密切沟通,将业务需求和用户交互习惯转化为实际用户界面,保证了产品的用户体验一致性。
3、统筹项目的整站英文化工作。针对英语语言习惯与文化背景,对界面布局、交互方式和提示信息进行了优化调整。
4、持续推进项目中公共组件的迭代升级与重构工作。提高了代码复用率,减少了代码冗余。极大地提升了开发效率与系统稳定性。
5、负责项目开发周期与测试周期的时间分配,制定详细的开发计划和测试计划。及时沟通后端和算法端进度,确保项目整体进度的有序推进。
项目总结
1、完成两个重大版本的功能开发与测试工作,并按时交付上线。
2、开发过程中排查并修复了系统中大量历史遗留问题。包括性能、兼容性问题以及用户交互体验等。显著提升了系统的稳定性与可靠性。
3、对系统内众多组件进行了全面重构优化,提升了代码质量与系统架构的合理性,提高组件的可维护性与扩展性。重构后的组件库能够更快速地响应业务需求的变化,降低了开发成本与时间从而提升了开发效率。
电池智能自动设计平台-BDA
项目背景
BDA是一款利用人工智能算法驱动仿真输出特定目标下的全局最优解,进一步提升设计效率的电池设计工具。整个系统有着大量的输入模块,计算模块,进度模块,图表展示模块等。
项目技术栈
Vue3 + Ant-desgin 等
项目职责
1、负责项目整体架构设计与搭建工作。同时考虑平台的混合部署方式以及大数据处理需求,将前端应用与后端服务进行合理拆分与整合,确保系统的可扩展性和稳定性。
2、主导项目的前端开发工作,从页面布局设计、功能模块实现到用户交互优化,全程与项目和设计沟通,确保项目的高质量交付。
3、在开发过程中,保证代码结构的清晰性与逻辑性,采用模块化开发方式,将复杂功能拆分为多个独立的模块进行开发与维护。
4、持续跟进项目的后续迭代开发工作,根据用户反馈与业务需求变化,及时对平台进行功能优化与升级。在迭代开发过程中,注重与各团队的沟通协作,确保新功能的开发与现有系统架构的兼容性与稳定性。
项目总结
1、在项目前期的时候因为核心算法部分的进度会落后前后端的开发工作,所以前后端先行开发同时与算法团队保持定期沟通,明确后端与算法端的预留对接时间与功能点要求。确保前后端开发工作的有序推进。
2、同时,由于项目需求在开发过程中频繁调整,采用敏捷开发方式,及时调整开发时间和测试时间节点,确保项目能够稳定如期开发完成并高质量按时交付客户。
3、对项目中大量重复出现的 Form 表单、业务模块与功能模块,进行了公共组件封装。例如,将 Form 表单封装为通用组件,通过数据配置方式灵活生成不同表单页面,大大减少了开发工作量与代码维护成本。对于业务模块与功能模块,提取为配置化组件,采用传入 JSON 数据的方式实现功能动态加载与扩展,提高组件灵活性与通用性。
北京万利兴源科技有限公司 ( 2022年9月 \~ 2023年9月)
主要负责公司智采项目的后台管理系统和小程序的研发。同时负责组内前端同事的任务分配和项目进度把控。另外帮助组内同事解决技术难点、codeReview等。
主要技术栈为vue,react,vant-weapp,ant-design,Element-ui,uni-app等
盛包数据管理工具
该项目是一个跨平台的企业内部数据管理工具,旨在帮助公司员工高效地管理和分析内部数据。提供了数据展示、文件操作、系统通知等功能。
项目技术栈
Electron+vue3+echarts+ant-design 等
项目职责
1、负责开发系统中的数据处理、展示等功能。
2、负责 vue 操作和Electron 原生操作通信,处理窗口管理、系统通知、文件操作等原生功能。
3、处理Electron 打包后遇到的应用的性能瓶颈进行优化以及内嵌webview 和原生Electron之间的问题。
4、使用 Electron Builder 进行应用打包,生成适用于 Windows、macOS 和 Linux 平台的安装包。
项目回顾
1、Electron 应用的主进程和渲染进程之间的通信机制复杂,容易出现消息丢失或延迟问题。使用 Promise 和 async/await 来处理异步通信。同时,加入日志、埋点等来记录错误类型方便排查
2、打包多个平台的时候由于文件路径、系统通知存在差异使用 path 模块来解决路径问题,通过Notification 来处理各个平台通知的差异性
3、在打包的时候经常遇到资源路径错误、依赖缺失等问题,导致打包失败或应用无法正常运行。通过日志记录和排查成功解决依赖和路径带来的问题。
盛包sass采购平台
项目背景
为需要包装相关的客户提供一站式采购的数字化服务平台。提供需求发布、快捷报价、方案设计、厂商生产、跟踪检验等功能。内置多重角色如采购商、供应商、运营商等。拥有订单、产品、合同、商品、对账、商城等模块。
项目技术栈
vue2 + vue3 + ant-desgin 等
项目职责
1、负责项目的日常功能迭代和进度把控以及在业务实现过程的难点解决。
2、老版本vue2和vue3版本的混用,将其重构升级到vue3版本,同时对其依赖的 antdesign 版本也一同升级。
3、对整个项目的UI样式和布局进行重构,统一规范化处理。
4、对上传、搜索查询、table列表、物料编辑、地图、地址管理等高频的业务模块进行抽离成组件使用
5、对常用的js方法进行封装比如计算、时间格式化、返回值格式化、非空判断、非空赋值等
6、完善项目的业务流程文档、代码功能文档等。
盛包小程序
项目背景
为C端和B端用户提供一站式的采购商城,可以对在盛包saas平台上架的商品进行采购、支付、退款、物流查看等。
项目技术栈
uni-app + echarts等
项目职责
1、负责小程序的功能开发、整体进度把控。
2、对小程序进行整体优化,采用分包、图片压缩CDN、去除历史重复代码等减少打包体积。
3、为解决历史遗留问题和业务需求。对登录、商品展示、购物车、规格属性、商品分类、个人中心、订单列表等核心业务模块和组件进行重构。
4、对下单、加入购物车、支付等常用场景进行交互优化,防止重复操作。
5、通过小程序批量上传api为项目增加一键提交审核功能。
供应商小程序
项目背景
为给供应商提供一个需要高效便捷的订单管理工具,使其能够轻松完成诸如发货、签收、审核等一系列关键的订单操作。
项目技术栈
react + vant-weapp
项目职责
1、统筹整个项目的任务分配和上线进度把控。
2、根据用户的反馈持续对小程序的功能进行优化与拓展。
3、主动了对小程序的布局和交互进行了重构,同时对项目中相似功能代码进行了组件化抽取复用,减少代码冗余,提高开发效率。
海管家 ( 2022年2月 \~ 2022年8月)
上海订舱系统
项目背景
为公司和个人提供快捷化船舶订舱的 saas系统。
项目职责
1、负责客户端和后台管理系统的日常功能迭代,前端难点攻克。
2、考虑到各家船司表单校验的不同,主导开发了船司表单字段标准化功能。
3、主导负责了优惠券功能模块的设计与开发。
4、主导负责财务模块重构。
5、对历史代码的梳理,为项目建立了从0到1的文档。
6、对项目的权限系统进行了重构。
青岛订舱系统
项目背景
功能和上海订舱系统相似,为公司和个人提供快捷化订舱的系统。但是实际业务流程有不同。
项目职责
1、负责客户端和后台管理系的前端框架的整体架构和搭建。
2、负责系统内各个模块,例如路由、axios、样式、组件、公共方法、权限、国际化的设计和开发落地。
3、负责系统公共组件,例如输入框、表单查询、表格、弹窗、本地缓存的开发。
4、建立了完善的系统文档。
5、以及同事的任务分配和问题解决以及技术指导。
其他工作
1、负责组内前端的CodeReview
2、帮助同事解决问题和输出技术分享
3、协助产品落地业务需求,给出解决方案
同程旅行 ( 2019年7月 \~ 2022年1月)
主要负责C端、B端产品以及小程序的研发工作,独立负责参与多个大型系统的从0到1的搭建以及大版本迭代。同时对组内新人、同事进行技术分享、指导、难点解决。
主要技术栈为Vue,iview-ui,Element-ui,原生JS,angularJS等。
酒店后台管理系统
项目背景
为酒管公司提供一个完整的saas管理后台,可以对前端PC商城及小程序进行权限、营销、产品、采购、财务等一系列的配置发布。
项目职责
1、担任项目主要开发。负责整个项目的业务功能推进以及功能迭代更新。
2、考虑到Saas化的需求,在开发过程中采用模块化的开发方式。使得每一个功能点都可以独立部署运行。
3、对整个项目的基础组件进行抽离整合建设。极大的提高了同事开发的效率。
4、推动整个系统的权限管理设计,满足了业务不同组织,不同角色的权限配置。
5、定期组织组内成员进行复盘,代码review,确保线上稳定。
项目回顾
1、整个saas化后台管理系统的功能非常庞大,整站的页面多达400+。这样就导致新入职的员工因为业务逻辑缺乏了解,对各个功能模块之间的联系缺乏了解。所以一直在推动完善建设项目的文档方便新同事可以快速上手。
2、同时因为业务原因涉及到大量的报表导入和导出的功能。重复开发就会导致浪费人力和精力。所以和后端沟通将每个报表的导出功能点使用统一接口通过不同参数的传值来实现区分从而提升了团队开发的整体效率。
C端同驿商城
项目背景
为了给酒管公司提供一个集中采购的平台。涉及到查询=>选购=>加购物车=>下单=>退货等一系列流程,且需要支持搜索引擎的SEO收录。
项目职责
1、担任项目主要开发。负责项目的技术架构设计和开发工作,推动项目稳定迭代上线。
2、主导了项目Nuxt的重构改造,满足了业务对seo功能的需求。
3、对权限分离、账户功能进行升级改造,解决了线上用户权限、账户切换问题。
4、对API进行分隔封装。解决不同模块,不同场景下的SSR渲染请求。
5、发现网站线上首屏加载较慢。通过对静态资源CDN,数据本地缓存,接口异步加载的方式使项目整体访问速度提升约20%。
6、推动团队内部成员,在开发中对公共功能、重复功能进行组件化开发。整体效率提升30%。
项目回顾
在使用Nuxt重构过程中,遇到需在服务端渲染的页面无法获取到localStorage。这就导致部分需要依赖从localStorage获取缓存信息的接口无法工作。在查找资料后通过vuex-persistedstate和js-cookie两个第三方支持库,将localStorage中的数据写入cookie在通过cookie赋值给Vuex.最后通过asyncData中stroe和headers中的cookie进行双重获取得以解决问题。
艺龙会小程序
项目背景
为公司旗下的酒店提供一个可以在线订房、入住、续订并且支持分销、会员、商城等一系列权益的平台。
项目职责
1、主导项目从0到1的搭建。负责项目的基础组件以及主要功能模块的开发。并协助同事解决技术难点,确保项目稳定迭代上线。
2、采用小程序原生开发,从0到1对小程序完成了搭建工作。
3、因历史原因小程序的体积超过了开发者工具上限,对整个项目的代码进行梳理删减、重构等使得体积从2M -> 800K
4、在开发过程过程中推动内部成员对代码、功能进行分支管理,避免功能冲突、代码混乱的问题,效率整体提升。
5、解决了在分销海报生成中携带参数过多,以及扫码后参数丢失的问题。
6、推动在项目中增加埋点,日志功能。方便业务对用户路径的追踪以及线上问题的排查。上线得到一致好评!
功能难点
在开发分销功能模块的时候有个海报生成分享的功能,第一是其携带参数多达4、5个,第二是海报样式有多个。在实际开发的时候发现生成的海报图片下载后是空白的。开始以为是网络图片的原因,就通过微信api下载到本地发现还是不行。最后将其转成base64格式的图片得以解决。
还有就是因为参数过长超过了小程序的最大限制。就和后端沟通将参数进行转义,在生成码之前将所有参数提交给后端生成一个短链,然后通过短链生成二维码,在扫码后在对短链进行解码,解决问题。
工品汇 ( 2018年8月 \~ 2019年6月)
CMS系统(页面搭建工具)
项目背景
公司的业务部门为了营销、拉新。通常会有各种主体大体相似的落地页和临时活动页面。为了提高运营的工作效率,减少人力开发成本。基于此前提开发一个活动可视化搭建项目,让运营可以通过点击和拖拽的方式快速生成活动页面上线。
项目职责
1、独立承担项目从 0 到 1 的全流程工作,在项目启动初期,深入调研业务部门的实际需求与操作习惯,以及落地页的主要功能。精心设计系统的原型与交互逻辑。
2、独立负责物料设计开发工作,根据活动页面的常见需求与设计风格,开发了物料库,包括图片、文本框、按钮、表单等各类页面物料组件,并为每个物料设定了灵活的属性配置选项,以满足不同活动场景的个性化需求。
3、充分考虑到项目的后期扩展性,在开发过程中对每种物料都进行了组件化的封装,并预留了丰富的扩展字段,以便后续根据业务发展需求轻松进行功能扩展与系统维护。
项目总结
1、该项目的难点在于各个颗粒的拖拽,利用H5的Drag、Drop API,监听用户操作在对应的操作下时进行相应数据增删改。同时考虑到后期的扩展性在开发中对每种物料都做了组件化的封装和扩展字段预留,以便后面的扩展和维护。
2、项目成功上线后,取得了显著的效益。在前端开发资源方面,极大地缓解了公司前端团队的重复工作量,使其能够将更多精力投入到核心业务功能的开发与优化中。
3、对于运营人员而言,不必在等前端开发完成后才能上线活动。对系统简单了解后即可快速创建精美的活动页面,能够更迅速地响应市场变化与营销活动需求。
游戏蜗牛 ( 2015年8月 \~ 2018年7月 )
Stone平台聊天系统
项目背景
在Stone游戏客户端内嵌一个实时聊天系统,满足玩家在平台上社交沟通需求。支持用户在线/离线聊天、添加/删除好友、上下线状态实时更新、聊天记录查看等功能。主要技术栈为 Vue。
项目职责
1、参与项目原型设计工作,结合用户需求与业务逻辑,构思出简洁直观且易于操作的聊天系统界面框架与交互逻辑。
2、采用vue + vuex + vue-router + sass 技术栈主导前端页面开发。
3、定义前后端数据交互格式以及接口规范。同时采用 websocket 技术建立长连接,实现用户之间的实时通信以及状态更新。
4、利用 vuex 对好友上下线以及好友添加等相关状态进行数据的集中管理与存储,以便在前端各个组件中方便地获取与更新状态信息。
项目总结
1、该项目时间紧,需要协调各方面配合。最后在预定时间成功上线 。极大的提升了对于项目开发进度的把控以及如何协调好各部门之间的配合。
2、通过该项目,不仅熟练掌握了 vuex 和 websocket 的使用方法,还为后续类似社交功能的开发积累了宝贵经验。
Stone平台圈子
项目背景
为玩家提供类似百度贴吧能够发布游戏相关内容以及分享个人经验的的社区平台。玩家可以发帖交流、评论回复、内容管理等。同时页面需要根据不同等级和权限来显示。
项目职责
1、参与项目交互设计和原型设计,考虑用户的权限系统和用户的等级系统。
2、负责项目的前端开发和维护工作,负责制定后端接口数据的结构定义。
3、对系统内的公共部分抽取成公共组件,提高了代码的复用性与可维护性。
4、通过vue自定义指令功能,对系统中不同权限的显示和操作进行拦截和区分
游戏官网
项目职责
负责公司各个游戏的PC端和H5端的官网以及各个游戏的双端活动页面,游戏中内嵌的 功能页面的开发和维护工作。
项目总结
1、和UI、产品讨论后建立了统一的 UI 组件库,方便在官网和H5页面上使用,提升了活动页面的开发效率。
2、根据实际的业务场景,对高频使用的方法封装成 JS 插件库,减少了开发的重复工作量。
3、推动对老的游戏官网进行重构更新,根据不同的官网类型采用响应式开发,PC 和移动端共用一套,同时对页面性能优化、交互优化,使其访问响应更快以及交互更加现代化。
个人项目(部分)
1、小程序(喵喵壁纸菌)
项目背景
主要为了解 uni-app 的开发流程和项目配置细节。同时为了熟悉uni-app 开发多端小程序、app 以及 h5 平台时,各平台间的差异特性与常见问题处理方式,积累多端开发实践经验,提升自身跨平台开发能力。
项目功能
1、利用 uni-app 自带云服务与云函数实现数据存储、业务逻辑处理等后端功能。
2、支持用户便捷上传壁纸并可以对壁纸的类型进行化分类标签化管理。
3、内置积分系统,用户下载壁纸需消耗积分,同时设立多元积分获取渠道,如每日签到、分享推广等,提高用户活跃度。
4、内置审核机制,支持用户投稿壁纸作品,管理员可以在管理端审核流程筛选优质内容。
2、小程序(头像小助手Pro)
项目背景
主要是体验微信小程序云开发与云函数实际开发流程。了解掌握微信小程序云开发有便捷性和高效性的特点。
项目功能
1、提供了多样化头像与模板资源管理功能,支持用户上传并发布各类风格的头像及模板资源。
2、借助云 API 强大的图像检测能力,对上传图片进行智能违规检测。
3、支持用户对生成的个性化图片或头像进行便捷保存与多渠道分享。
4、内置模板库,用户可轻松选择心仪模板进行头像快速生成。
3、小程序(坚果工具箱)
项目背景
主要为了熟悉和掌握在开发微信小程序过程中,如何封装组件如按钮、Form表单、长文本显示、输入框、更新提示、收藏提示,以及对于小程序原本自带的组件如何自定义比如 tabBar、navigator等。
项目功能
1、提供各种常见的文字转换功能等
2、可以实现微信中热门的头像、昵称转换
3、后期添加常见的如 base64转换等功能
4、个人博客小程序(坚果大叔)
项目背景
主要为了验证在小程序下业务组件和功能组件如何定义,同时对于不同类型的组件和代码之间如何高效统一管理,以及自定义组件如何跨项目使用。
项目功能
1、实现博客的小程序化,方便博客内容在微信中分享。
2、可以对 md 文章进行解析显示。
3、可以自定义分享海报和点赞评论。