沪膘记

年终总结沪膘记

人在江湖飘,哪能不长膘。敲代码历经了严寒酷暑,走过了iOS、Web项目的需求开发。年底了是丰收喜悦的季节,是骡子是马也该拉出来溜溜,给自己和未来一个交代。 

注:上图红色内容为我的主要工作

APP篇

注:上图我的App工作内容框架

App最主要的成长应该在国密和组件化思考。前者打造更安全的FFT App,让用户付费无忧,通达四海。后者提升开发效率,打造更灵活的业务应用。

工作内容和达成目标

业务

国密改造,密码控件升级,携号转网,好评等业务需求,按时保质保量完成需求开发,无发版回退记录,无重大线上bug。

性能

主要是利用instrument bugly等工具对App进行性能优化。将App原来约2000多个警告内存泄漏卡顿等问题,减少为目前的325个(剩余97%以上为三方库导致),三方库因为业务改动过,相关人不清楚,没法升级。暂时搁浅。(后续看能否逐步继续推进优化,摒弃修改三方库耦合业务积重难返恶疾)。引入异步线程优化缓存存储。重写优化相关代码,推进组内代码质量。不定期会对项目代码review,提出优化意见。App卡顿减少2%个点,异常减少1%个点,效果明显。大大提升用户体验好感度。

组件化

App cocoapods组件化推进,三方库改为组件式接入6个,私有组件库1个国密库,迭代优化4版。提高了开发效率,减少业务耦合,提升代码的可维护性。

技术分享

主要分享了,swift离散型网络架构,国密原理和国密耗时研究分享,git管理分享三篇,均已上传技术部confluence上。帮助组员git使用,分享好用工具等。本年共完成个人原创博客13篇,技术博客10篇,其他类3篇。推动组内技术分享,需要组长配合提升大家分享热度,不断碰撞火花,精益求精。

重难点

主要是国密算法研究,国密耗时研究,组件化封装,升级迭代国密版本4版。

Java bc库提供了国密,后端和安卓用一套轻松调通。但是iOS用OpenSSL,GMSSL等加密库均不行。但是后端似乎停留于用,具体算法不清楚。我只能对OpenSSL,GMSSL结合国家密码局发布国密算法文章死磕。从椭圆曲线算法,公私钥原理,杂凑函数,随机数生成器等一步步研究。然后将相关参数具化,请人帮忙看java bc里搜索内容,一步步排查对算法和参数。最终成功完成。后期还利用多线程异步等方式探索更优通信方案

Web

注:上图我的Web工作内容框架

工作内容和达成目标

收单公众号

参与收单公众号项目搭建,完成进件,报修,结算等功能。累计发版约15次。独立承担中后期的版本迭代发版工作,按时保质保量完成开发工作。无版本回退和重大线上bug。同时利用Vuex进行性能优化项目体验优化。另外建立完善的上线清单流程,已分享上传confluence。

支付宝微信扫码台牌

参与支付宝微信扫码台牌项目搭建,主要完成物业小区查询账单缴费等流程。独立承担中后期的版本迭代。累计迭代发版约6次。按时保质保量完成开发工作。无版本回退和重大线上bug。

物业费PC项目

参与物业费PC项目搭建,完成POS管理,发票管理,手续费费管理,报表管理,催缴管理等功能。累计发版约15次。和刘康担任项目开发主力。因为刘康去了房产税,最近4版主要我独立承担开发发版。项目初期缺乏技术文档,主动补全物业费2.0项目技术文档。希望保持一个明确的项目架构和技术优化大纲,形成一套属于我们FFT的前端技术沉淀。

重难点

同时结合iOS的国密sm2,sm3,sm4,zuc的封装组件库,封装了JavaScript的国密sm2,sm3,sm4的组件库,已上传大前端git仓库。目前主要应用物业费,台牌,hydra端应用中。

美中不足篇

今年最主要的成长来自于Html,VUE项目实践。但是通过上面也发现了一些问题和不足。 

注:上图需要改进的一些问题

业务

业务服务于用户,用户的满意度,用户粘性,增长率;公司的营收,战略发展。和业务有密不可分的联系。但是有些业务的接入有点美中不足。

三方业务

收单公众号早期接入的OCR识别业务识别率,上线后没有达到预期。后来接入了腾讯微众OCR。

携号转网业务,上线后劲峰问题导致业务流程一度中断。

寻找优质三方业务合作,合理的业务和技术评估,能给用户更好的体验。

自营业务

物业费POS刷卡,交易流程等业务流程设计,存在缺陷,导致部分用户刷卡异常。

产品和技术合理制定业务流程,进行业务流程审核把控,技术把控,可以规避一些常见业务异常风险。

技术

需求文档不详细,考虑业务不清楚,进行需求评审。

需求评审考虑不全面,进入开发流程,导致开发停滞,返工等影响开发效率。

技术方案评估和风险把控不够,导致业务流程异常bug。iOS和Android部分技术方案存在区别,导致用户业务流程存在差异性。

开发代码质量有待提升,codeReview力度不够。项目性能有待提升

        App业务耦合三方库,导致组件推动缓慢。


针对以上问题,结合未来开发需求,所以制定下2020年的发展计划。

规划篇 

注:上图长期规划,下图短期规划 


公司的收单业务,水电煤业务,物业费业务等,离不开强大的技术支撑。作为公司技术基石的我们,长期的目标肯定是向BAT这种能够支撑亿万级体量的技术部门看齐。万丈高楼平地起,所以这里我指定了2020年的短期目标和规划。

规划目标

业务

     加强业务需求评审力度,达到业务需求要风险可控

     技术方案合理,需求开发按时保质保量完成,使App业务高内聚低耦合,无上线版本回退,无重大上线bug

性能

      App卡顿降低1%个点以上,异常率在5‰以下。

      web代码规范,提升打包速度,合理缓存,提升流畅度和加载速度。提高用户体验。

组件化

推进App组件化进度,剩余90%的三方库进行三方库和业务代码解耦。实现代码可维护性和扩展性。

推进Web的组件化进度,形成element PC组件库,移动Web组件库,FFT PC组件库,FFT Web组件库集群,提高各个项目间组件复用率,提升开发效率。

安全性

        整合RSA等加密和国密,形成一套加密组件。

        对目前前端国密通信方案,继续寻求最优方案改造升级。

        App,Web防止反编译探究和应用。

技术学习

从深度和广度持续学习iOS和Web知识,提升技能。

主要方向:iOS和Web安全,iOS和Web组件化,iOS和Web缓存架构,iOS和Web底层等方面进行学习。原创技术博客不低于2019年的13篇。

不谈方案,只说重构就是刷流氓,本着负责任的的5好男人态度所以列出短期目标。

目标实现方案

业务

需求评审前,熟读需求。结合现有业务多方面综合考虑进行需求评审。

加强技术方案评审,或者技术方案前后端多加沟通。如有业务风险,提前和产品以及负责人预知风险,使风险可控。技术方案灵活可控,如有必要加入planB拯救计划。确保业务正常。

性能

通过instruments结合bugly等工具持续优化App性能。继续引入异步线程优化App的缓存架构。完成对App的Web交互架构二次升级改造。加强各个业务代码review,加强和组员交流改进项目代码质量,继续推进组员技术分,灌输高质量代码思想,推动大家齐心协力。

前端项目性能优化,目前前端项目性能和代码自动检测欠缺,后期推进web端项目自动检测等达到性能优化。

组件化

持续推进App的组件化,丰富组件库,改掉很多私自修改三方库和业务严重耦合的老代码,导致三方库无法升级,解决阻碍组件化推进的障碍。对独立功能进行组件化升级改造。目前部分业务中间件存在问题,需要大家齐心协力改造。

Web端持续推进组件化,前后端分离,学习前端架构知识,不断优化前端架构,提升项目性能和安全,促进前端各个项目组件统一,提高开发效率。将业务组件的优化的高内聚低耦合。达到更高效的开发效率,使代码可扩展性和维护性更高。降低面向用户的业务风险。

安全性

持续优化国密iOS和web的JS国密组件,提升目前通信方案性能。将RSA,DES等和国密封装成一个组件,加强App和前端防止反编译手段,提升安全性。针对目前前端生成证书,前后端可以,但是后端bc库生成证书,前端不行,寻找解决方案。同时从性能方面推进国密通信安全方案优化。

技术学习

通过github,CSDN,waterflow等方式和组员一起学习优质代码。封装web前端组件库代码,形成工具组件,UI组件等并应用于多个项目。同时提升项目的安全性和性能。针对前端组件化进度不快问题,努力推进前端组件化进度。提升大前端各个web项目的开发效率。不断积累形成FFT前端项目架构和组件积累。

沟通协调

团队:需要组长配合,不定期小组例会分享技术,短期一些技术研究进度,短期项目技术的应用等作出总结和反馈。从而达到快速推进技术目标达成。同时也有利于对小组整体技术规划走向的一个调整和优化。有利于成员之前相互学习和面临突发异常人员调动的紧急应对处理方案。

个人:积极主动和组长沟通,分担组内压力。积极和团队成员沟通分享和一起学习成长。一起打造更加强大的大前端团队。

警醒篇

古人衣带渐宽终不悔,我们程序员用心写代码膘来也很美。我不提倡膘,我提倡用代码实现自生价值。希望2020身体健康,事业但问耕耘,莫问收获,提升可持续发展力--2020自勉

张亚洲记年终总结

时年:2019年12月23日

你可能感兴趣的:(沪膘记)