「时光不负,创作不停,本文正在参加2021年终总结征文大赛」
从在线教育到新能源汽车,2021年我游历在互联网的风口浪尖。说“风口浪尖”其实是一种调侃,毕竟我只是行业中的一粒沙子-一个程序员。
工作流水账
2020年11月怀着留恋与不舍离开了工作三年零七个月的360。同年12月份以运维开发的身份入职猿辅导,开启了快乐又短暂的在线教育之旅。
在猿辅导一直从事数据库DevOps开发工作,接触最多的是MySQL和Redis。之前更多的是站在使用者的角度去思考怎么用好数据库,现在站在运维开发的视角思考的问题会不太一样,更加关注数据库本身的稳定性、高可用和可维护性。数据库DevOps工作中有很多流程化的事情,比如说要自动创建一个数据库实例,需要的步骤有:
- 填写库名称及其它配置信息。
- 在元数据表中维护数据库记录,并标记为创建中。
- 申请DNS。
- 检查创建MySQL机器资源是否充足,并给机器上的Agent发送指令,创建MySQL实例。
- 。。。
... 更详细的创建步骤记不太清了。创建实例的每一个步骤都有可能失败,而且必须要保证最终结果一致,这种场景下Saga分布式事务模型是很好的解决方案。
除了DevOps平台的开发还参与了MySQL Slave节点自动摘除的设计和开发。MySQL主节点的高可用采用的是MHA架构来保障,主节点宕机可以自动把Slave节点提升为Master节点;但是Slave实例出现异常时分配到此实例的流量就会出现问题,需要及时切走。所以内部自研了Slave实例自动摘除方案。大概实现思路是,把监控服务部署在不同机房,定时检测所有Slave实例存活状态;同时在Slave实例上安装Agent,检测MySQL进程状态并心跳上报数据。确认异常时调用流量切换流程。
工作之余还产出了一些技术文章MySQL相关5篇、Linux相关2篇,翻译了Raft协议的论文。
欢乐的时光总是短暂的,六月底因为各种原因离开猿辅导加入了理想汽车。
在面试理想汽车的过程中,面试官给予了我很高的认可,入职之后主要是参与一个刚刚起步的在线协作系统的开发工作,感觉能跟着这样一个项目一起成长也是非常好的机会。
不过一开始对车企还不够了解,最终选择加入之前也经过了深刻的思考。首先当前处在国内能源改革的大趋势下,新能源车将来有很大可能会代替燃油车成为主流;其次移动互联网的热潮褪去之后,汽车被大家公认为下一个互联网时代的“手机”。
刚离开在线教育,一不小心又站到了另一个风口上。
入职理想汽车之后我主要负责在线表格的开发。截止到现在我们的在线表格系统已经迭代了四个小版本。在开发在线表格的过程中也遇到了好多难题。比如表格数据的存储更新问题,因为一个表格可能有很多单元格,如果按照一个单元格一行记录去存储数据,行数太多常见的开源数据库很难支撑;还有多人协作的难题,如何保证多个用户同时编辑一个表格,数据不冲突,不过这个问题我们还没有彻底解决,基本方案确定好了,明年上半年可以完全解决;再比如我们第一个版本依赖了开源的Luckysheet当作前端表格插件,但是luckysheet本身不支持一个页面创建多个表格。我们有一个应用场景是在文档中插入表格,虽然花费了很大力气不过最后我们还是把luckysheet改造成了可以支持多实例。
在使用luckysheet的过程中遇到了很多问题,再加上我们明年有新的开发计划,要支持多维表格,所以我们要把这个15万行代码的前端开源插件重构,现在核心功能已经完成了拆分,部分模块也完成了重构,后续的重构工作就分散到日常开发中逐步完成。
为了更好的支撑业务,防止方向性错误,我做了大量在线协作相关技术调研,并产出了在线协作主题文章六篇。同时也想以此为出发点和业界同行进行深入交流(已与多位小伙伴交流多次)。从六月底入职理想汽车一直到现在,整体感觉还是很不错的,感触最深的就是个人的成长能和业务发展融合在一起。
前面主要介绍了工作内容,接下来的内容更偏向于个人成长。
技术总结
毕业到现在开发过4年半政企项目,3年半互联网toC的产品,也使用了多个技术栈Java、Golang、PHP、前端等等。但是之前缺少积累沉淀,虽然也写一些笔记但大都写的太简单肤浅,有些东西时间久了就忘记了,好在从去年开始意识到了这个问题以后我现在更加注重总结沉淀了。
我个人比较推崇的技术观念:不要因为一个职位就拘泥某一项技术,要以解决问题为目的。 今年我用OKR管理我的年度计划:
今年OKR的完成情况一般。没有完成好的原因主要是执行过程中校对的次数太少了,导致方向跑偏了,明年要每个季度跟踪进度。
不过OKR中有个意外惊喜就是O1下面的KR4:“公众号超过100+关注”。我的公众号是3月份开始写的,一开始就默默的写和写笔记差不多。后来到理想汽车之后得到了同事的帮助,帮我转发了多篇文章并推荐了一些公众号的写作方法,现在关注数已经接近200了。接下来的几年我还会继续活跃在公众号和掘金。说到写文章了那就顺便说一下公众号+掘金明年的升级方向: 公众号+掘金文章升级:
-
公众号菜单增加:自我介绍页+书籍推荐页
-
私信自动回复内容升级
-
文章质量如何评估?
-
如何保证文章质量?
- 个人:增强自身写作能力、学习更多知识、深入思考找到独特的视角、文章更加垂直在几个方向。
- 外界:读到一些优秀的文章申请转发发布出;寻找共创的作者。
-
如何增加曝光?
- 有几个平台还没发布文章,每个季度去全部平台发布文章 博客园 CSDN 思否 infoq;把精品的文章去各大公众号/平台投稿
-
每一篇文章都设定主标题和副标题,防止进入自我世界的误区。
明年争取公众号关注到1000+,掘金到Lv3。
总结
作为一个技术人,今年在工作中接触了两个新的业务场景并通过技术储备+快速学习,一一完成了业务落地,小有成就感。后半年也找到了更适合自己的研究方向。明年和小伙伴们一起把公司业务支撑起来,同时争取在业界做出点名气。
工作之余今年一共产出了33篇原创技术文章,收获了很多点赞和关注。感谢大家的支持!(架构、Golang、在线协作、服务端、前端)
做的不好的地方一是文中已经提到的OKR执行时没有定期复盘,再就是有些事情急于求成了。明年要改正这两个问题。
“逆水行舟,不进则退”,愿大家明年的目标都能完成。