对于这个问题,我想谈三点。
第一,不停留于代码层。
虽然我的头条号名称是当我写下一亿行代码,但是这并不代表我对于量产代码有偏执或者执念。正好相反,我觉得比起代码的量,我们应该更加关注于怎么提高代码的质量和复用性,我想这才是每个程序猿发挥其自身价值的关键。
我一直和我周围的人灌输这样的一个思想,不要每次构建工程项目时都从0开始。从零开始很酷,但如果你每个项目都只在做从0到1的事情,那么我可以冷酷无情的说,你的这份职业是相当失败的。你应该超越从0到1,并且努力做到100分。
软件工程从本质上来说,都应该关注并解决之前没有解决的15%的问题,换言之,85%的问题必须通过之前的代码所构建的模块或者服务去解决。这就不是仅仅停留在代码层的思维模式所能处理的了,还需要通过工程思维、项目管理、软件服务集成等工程方法论来处理。
第二,努力在特有领域做到100分。
99分和100分有没有区别?有,并且非常之大。在大众评分的概念中,99分离可认知的顶点差了1分,而100分则是达到了认知上限,但并不意味着是极限。100分之外的世界,是每个想要追求极致的技术人员所应该去追寻的。达到100分,才是真正的开始。
我们现在很多公司很喜欢招聘全栈工程师,至少我本人也总是被团队领导向新人介绍是全栈工程师,也许在领导眼中认为全栈工程师是全能的,其实我并不这么认为,基于一个普遍的看法,除了极个别的,大家的时间投入在一致的情况下,专攻一点的工程师对于该项技术的熟练和认知是要远远超过东一榔头西一锤子的工程师在该项技术上所达到的高度。
但是我依然热爱全栈,并不意味着我会为所谓的全能而沾沾自喜,我所信奉的一句话是:你在360度累积的知识和技术,最终将在一点上爆发出所有的光辉。也就是说,在各个次要领域积累的技能和知识,都应该最终能够深化你自己所选择的自身优势领域,这才是你立足于技术职场,最终不会因年龄而被淘汰的根本。
第三,终身学习。
我这里所说的终身学习,不是一味的去追求流行、时髦的技术,这些忽悠忽悠别人还行,对于自己的内心,应该保持清醒和真诚。技术也分为技术之术,和技术之道。多去回顾技术的发展历史,探寻该项技术为何最终会以这样的方式呈现,逐步归纳出技术的本质和基本规则,这就是技术之道;而诸如spring-cloud、hadoop会说出概念、会用,其实是很浅薄的,因为这些技术是立足于大数据、微服务等相关应用场景所孵化出的具体技术,这些才是你应该去探寻的技术本质。
保持好奇心和技术的敏锐度,大龄程序猿比起年轻人的优势,应该在于经验和方法论,一味的拼体力,本来就不是你应该去做的,如果已经到了拼体力的程度,不如弄一批毕业生,你的体力总和显然是会被人数所碾压的。而真正使得你会被取代的,则是你的自满,停滞不前,或者是随意前进而没有章法。技术的发展日新月异,但依然尤其内在的规律。
把握当下,活在未来,终身学习,向死而生。
网友评论