前端开发:
1、表格是数据分析的核心组件,基于 Element 表格封装项目通用表格组件,使用虚拟滚动解决大数据表格展现性能问题、实
现表格列显示和拖拽排序的配置、全局和列数据检索、数据及图片的导出和复制;
2、负责插件框架开发,封装底层功能代码,提供文档给不同的业务开发人员使用,postMessage 解决框架层和业务层通讯、框
架层封装 Fetch+ArrayBuffer 解决视频、图片文件传输;
3、通用组件开发,如Echarts和AntV可视化图表、Canvas合并处理、XLXS表格导出,并上传至 NPM 仓库,便于其他项目复用;
4、排查页面性能问题,使用 chrome 调试工具分析 DOM 节点数、内存大小、函数执行时间,实际排查中定时器导致的概率较
大,日常开发中也会积极应用懒加载、预加载、节流防抖等方式提高性能;
5、在实际开发维护中也会使用一些冷门技术解决问题,IndexedDB+索引解决前端大数据存储检索、
WebWorker+OffscreenCanvas多线程处理图片裁剪、全局 error和 unhandledrejection 事件捕获回传、队列并发请求、影子
Dom 解决样式污染、Js 原生方法改写实现事件监听;
6、理解及应用Promise解决实际问题,如任务池、队列、防抖;
7、Node+Egg 框架搭建后端服务,常驻进程适用并发高;
后端开发:
1、从项目评估、技术选型、定义规范、开发、部署上线等一整套流程;
2、老后端系统重构,解决老系统高并发性能低、数据冗余、扩展性低等问题,项目使用 ThinkPHP、MySQL、Redis ,通过合
理缓存和数据索引,在服务器配置消减一半的情况下,解决系统高并发问题(1万+Nginx 链接数),采用 MVCS 分层、REST
ful API 、积极运用框架提供的功能(模型关联、获取器、枚举类),提高代码的简洁性、可读性、可扩展性;
3、使用过 Flink+Kafka+ADB 数据库大数据计算存储,使用 Clickhouse 数据库开发内部数据分析(留存分析);