2018年已经悄然到来,回望过去一年,收获不少,感恩不少;将来一年,心里充满了期待,不管是工做仍是生活,将会发生很大变化。大年初一的晚上,将本身的所思所想记录下来,与你们分享,激励本身18年更努力。html
我目前就任于小米,在『小米网智能客服项目』从事开发工做,项目主要包含在线客服、智能机器人、智能数据分析三大块,另外还包括热线、邮件、工单等模块。git
16年3月份,我加入这个团队,当时就4我的,每一个人负责多个子项目。通过了解,项目初期想作的功能不少,设计的比较大,不少人投入进来,造成了不少个子服务。因此17年上半年以前,我一直在维护项目,解决线上的一些问题,实现业务的一些小需求。另外,当时小米的管理比较扁平化,项目管理和团队管理也不是很规范,本身也比较松散,技术和团队协做能力提高的都比较少。github
17年下半年,小米发展增速明显,国内和国外的业绩都有了很大提高。管理上也开始重视起来,招了不少项目经理,『小米网智能客服项目』有了产品功能规划,开发团队也慢慢扩大,慢慢变得好起来。web
还有一点对我影响很大,咱们团队的开发负责人,17年中旬加入进来,有10多年的开发、管理经验,从他身上,在任务规划、执行力、团队协做上学到了不少。spring
下面从主要工做、线上问题处理、规划执行能力、家庭几个方面总结本身过去的一年。数据库
我主要负责在线客服,使用到的主要技术点:浏览器
使用到的主要框架和组件:缓存
在线客服最重要的一点是保证用户和客服可以在线沟通,相似于IM。现有系统缺乏消息确认、重发机制,多终端消息同步也不支持,17年在技术负责人的指导下,重构了『在线实时聊天』模块,进行了抽象,变为通用的『消息平台』:服务器
有点遗憾的是,17年下半年规划需求比较多且比较紧急,人也比较少,没可以正式上线,18年必定要推动上线。websocket
前面说到,项目有不少子服务,每一个服务maven的配置都很类似,更新维护都要修改全部的服务,不是很方便。通过调研和思考,决定将公共的依赖、版本声明、构建过程、maven插件统一管理,抽象出一个parent pom。
maven自己就支持parent pom,每一个子项目只需声明下继承父pom,就能够直接声明须要的依赖,不须要再声明版本,构建过程。
另外,将公司其余组的一些工具类,也声明在父pom中。客服项目特有的一些工具类移到父pom所在项目,并在父pom中声明。
因历史缘由,国内和海外代码分支是不一样的分支,海外的功能较国内相对较少,并且海外有近1年未更新了。一次,业务提出一个海外需求,该需求在国内分支已经实现。通过确认,海外有的功能,国内都有,并且交互和操做都相同,只是一些基础存储组件不一样。最终决定,合并国内和海外分支,方便之后功能扩展,节约开发时间和维护成本。
升级过程熬了2个通宵(不是连续的),过程在此就不详细描述了,简单总结下:
相信大部分团队都在使用git进行代码版本控制,但真正用好git,多人协做开发一个项目,须要规定一套工做流规范。
我借鉴网上比较流行的git flow规范,造成了相关规范,对各类场景的使用进行了说明,并作了一次分享,如今已经在项目中试运行,明年会增强推动。
扩展阅读:
问题处理也是很重要的能力,更能提现一我的的能力,遇到问题时,首先不要排斥,它是提高本身能力的一个机会,问题解决后,要进行总结回顾,下次遇到类似问题时能够快速定位和处理。
17年遇到了很多问题,下面列举2个问题总结(当时总结的)。
从团队负责人身上,获益最大的就是规划执行能力,让我作事有条不紊,善始善终,更充实、更有效。
下面分享下咱们团队和个人规划执行过程
我严格执行了上面的过程,获益良多。
篇幅缘由,就很少说了,总结两点:
我会深刻学习如下相关技术:
18年,我将带个小组,多花精力在管理上,阅读相关数据,向身边优秀的人多学习,增强小组、部门间的协做沟通。
3月份,个人宝宝就要出生了,我会多花点时间学习如何与她沟通。 老婆会更辛苦,我会多包容她,陪着她。