我们每个人都希望自己做的事情充满高价值,毕竟谁都不喜欢做生产线上的一枚"螺丝钉"。但是在职场上,如果你是一个新人,那么几乎不可避免的在一开始被上级分配一些看上去简单、重复、低价值的事情。
几乎每个新人都不可避免会有这样的经历,哪怕是伟大的天才,也是一开始名不见经传。但是随着时间的流逝,一些"螺丝钉"成长成了令人仰望的"参天大树",而另一些人却依旧是"螺丝钉"。当我们面对每天看似简单、机械、重复的事情时,我们其实可以问问自己"我真能把简单的事情做好吗?"
树立高标准,把简单的事做得更优
理论上说,这个世界上没有绝对简单和困难的事情。一件事情之所以看上去很简单,特别是工作上的事,很可能是当前对这件事情的完成标准要求比较低。如果我们主动去提高一下要求,事情复杂度可能就要大很多了。
我是一名程序员,这段时间一直在学习吴军老师的《谷歌方法论》。排序问题就是一个明显的例子。把一堆数按照从小到大或者从大到小进行排序,看上去是一个简单、枯燥的问题。最简单的也是最容易理解的就是"比较排序",把前后数据两两比较,如果顺序不对就调换位置,直到把整个数据排列完。这种代码是一个基本理工科毕业生就应该会写的。
但是,当数据量大了以后,这种简单方法的效率就低了,速度就慢了,满足不了需求。于是,大量计算机科学家对排序方法展开研究,诞生了多种排序算法,如果一个程序员能够精通各种主流的排序算法并能够很快写出每种排序算法的代码,那就是高手水平了。
所以看似简单的一件事情,如果静下心去钻研,考虑在更复杂的场景下,如何能节约时间,提高效率,那么做简单的事情,你同样能成为高手。
追求细节上的一丝不苟
在公司和同事一起吃饭的时候,我们经常笑着说:一个优秀的程序员,他的代码就好像一篇优秀的文章,读起来赏心悦目,会成为后来人的模板,即便有一天他离职了,他的代码依然"流芳百世"。
而一个不注重细节的程序员,他的代码不仅读起来让人感觉不舒服,而且里面"bug"重重,不仅本身的功能时不时出问题,还会给其他人开发的模块带来"危机"。如果他离职了,那么后来的人要花好大的精力去维护修改他的代码,这样的代码就是"遗臭万年"。
前几天,部长找我进行年度总结谈话,给我说的很深入的一点就是在细节上严格要求自己。哪怕一个函数很简单,但一句多余的代码都不要写,因为哪怕多余的一句代码就会拖累一点系统运行的时间。而该有的容错判断,该有的入参检查,该有的异常处理流程,哪怕再麻烦,也不能偷懒省去,因为该有的防护步骤缺失了,哪怕万分之一的概率,也不能因为你的代码异常而导致整个程序崩溃。
想想,这样对细节的严格把控,做起来的确非常艰难,但是一旦开始做了,养成了把控细节的良好思维习惯,很快自己也就能察觉到其中的好处。
这周我要移植一个我之前开发的代码模块到一个新的项目分支上。虽然那个模块只有3000多行代码,但我仔细检查了之前的代码,把一些冗余代码删除,加入了异常处理流程。在整理的过程中,我对我之前开发的模块有了更深刻的了解,而注重细节不仅是消除"bug",更能让开发者自己清晰思路,梳理流程。从长远看,是利人利己的事。
新人,在职场上肯定一开始不可能被安排非常重要的任务,肯定会从基层做起。但是,做简单的事也能有意识的提升自己,主动提高要求,主动追求细节,你就能把简单的事做好,逐渐长成"参天大树"!