成长没有线性的稳步向前
很多人对成长有一个误区,认为只要每天进步一点点,日积月累就能达到理想的高度。以程序员来说,习惯了用线性思维看待问题,觉得职业发展也可以像写代码一样,今天完成一个功能,明天优化一个算法,慢慢地就能成长为技术大牛。但现实往往不是这样运作的。
在这个瞬息万变的时代,尤其是在技术日新月异的IT行业,成长从来都不是线性的。你每天的一点进步,很可能都追不上行业发展的速度。"稳扎稳打"的策略看似无懈可击,实则无异于原地踏步。如果不能做到与时俱进、革故鼎新,那么昨天的宝库到了今天可能就成了垃圾堆。
真正的成长,往往是非线性的,它绝不会是直线型的稳步向前。
"吃老本"的成长,如果过度依赖过往的成果,不思进取,那就如同把"老本"吃穷,眼睁睁看着自己被淘汰。很多程序员在校期间学习刻苦,一毕业就凭借扎实的计算机功底进入大厂,工作几年后却因为知识体系过于陈旧而逐渐失去竞争力,就是"吃老本"的典型案例。
与之相对的,是"指数型"的成长。这种成长径路,开始可能并不起眼,但一旦积累到临界点,就会迎来井喷式的发展。那些技术领域的传奇人物,无一不是指数型选手。比如年轻的Bill Gates,通宵达旦地研究操作系统,数年如一日地优化算法,终于在个人电脑时代来临时,一鸣惊人。再比如乔布斯,在被苹果解雇后,并没有气馁,而是潜心钻研,最终东山再起,引领了一个移动互联网的时代。
对于普通的程序员来说,要想获得"指数型"的成长,仅仅在自己的专业领域刻苦钻研是远远不够的。你需要主动走出舒适区,学习一些看似"无关"但实则至关重要的 people skills。比如销售(sell)和招聘(recruit),这些都是程序员们天生不擅长,但又必须掌握的能力。
如果你的技术成果得不到合理的包装和推广,再优秀也可能石沉大海;如果你不会 sale 自己,就很难在职场上获得晋升的机会;如果你不懂人脉,就难以为自己组建一支 dream team。这些看似与技术无关的环节,恰恰成为制约程序员职业发展的瓶颈。
而这些 people skills,绝非闭门造车就能习得,它们需要你主动 "破圈",跨越边界,向那些看似"天差地远"的领域学习。比如去 sales 部门蹲点,学习他们的 pitching 技巧;比如参加人力资源的培训,掌握面试和筛选人才的技巧;又比如向市场部的同事请教,了解如何包装和推广一个 idea 或产品。
成长从来都不是一蹴而就的,它需要我们不断突破自我,拓宽视野。对于程序员来说,精进技术固然重要,但更要懂得向其他领域学习。成长的路上,我们时常需要跨越边界,学习看似无关的 people skills。唯有如此,才能打破线性成长的桎梏,实现职业发展的突破。
