首页 > IT职业 > IT职场 > 加入阿里技术团队三年,哪些习惯让我在工作上持续受益?
本文作者:旺德,阿里云高级开发工程师
2017年研究生毕业,我加入阿里巴巴数据库技术团队,从事分布式数据库研发,如今算来已经有三年事件了,在这期间,我深度参与了双十一背后的数据库PolarDB-X从设计到实现的全过程。在这三年的时间里,于我而言,最大的收获来自两方面:
(1)大型数据库项目的磨砺。数据库作为三大基础软件之一,复杂度不言而喻,而分布式数据库将这个复杂度又提升了一个层次,因此尝试这个领域的企业并不多。一毕业就有机会挑战这个级别的难度,磨砺造就成长。
(2)有幸与一群实力超群的小伙伴一起工作,从他们身上能学习到太多东西了。
根据工作经验和观察身边优秀的同事,我发现优良的工作习惯是区别一般工程师和专家工程师的重要素质。想要提升自己,必要认识到哪些工作习惯会拖延工作效率,提升项目复杂度,增加沟通难度,甚至让合作伙伴失望,然后改正它们。刻意练习那些被证明有效实用的工作方式,成为习惯。在阿里的这三年,我积累了这些工作习惯:

最基础也最重要的习惯:想清楚再动手。大模块和功能,详细的设计文档必不可少。小模块和功能,最好动手之前,在白板或纸上写画清楚,并记录下来,千万不要靠巧合编程,要理解正在做的事情,并全面考虑各种可能性。
设计、编写正交性好的代码模块。这是大家公认的良好编程习惯,但说起来容易,做起来难。工程师可能会图一时之快,编写重复、复杂的“面条代码”,随着代码量膨胀,这无疑会是代码维护和问题排查的灾难。平时最好能刻意练习编写正交性好的代码(刚开始可能花时间,但要熟悉这种思维习惯),学习业界优秀的代码也是精进的方式。这里简单列四点实用技巧:
不向其它模块暴露任何不必要的信息,也尽量不依赖其它模块,隐藏复杂性
尽量避免编写相似的函数,让复用变的容易。
尽量避免直接使用全局变量。
编写独立的函数,减少函数间的依赖,函数解耦的一些技巧:
只调用对象自身的函数。
只调用传入参数对象的成员函数。
只调用函数内部创建对象的函数。
减少函数的长度。
把低级的知识放在代码里,注释留给高级的说明,糟糕的代码才需要许多注释,当然也不能没有注释。commit message也要认真写。
时刻考虑并发对代码的影响,面向并发设计;时刻考虑空间和时间效率;时刻考虑Corner case。
为项目制定详细的编码规范,并严格遵守。精心的为你模块、文件、变量和函数命名,意义清晰无歧义。合理布局文件和文件夹。
关于bug排查。
打印含有跟踪信息、格式统一规范的日志,尤其是异常路径的。
尽可能多、尽可能早、尽可能全面地测试。让质量成为正式的需求。
不要忽略资源耗尽、故障恢复的测试场景
关于工具使用:
使用配置文件,而不是集成在代码里。把抽象放进代码,把细节放进元数据。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69940574/viewspace-2682165/ ,如需转载,请注明出处,否则将追究法律责任。