
30岁前,软件工程师如何规划不被淘汰的职业生涯?
我知道,这是一个非常大的命题。
首先来看看“30岁”:
这是一个有趣的年纪,因为对一般人来说(以下讨论以男性角色为主),通常一方面需要肩负来自外界的各种责任——年纪渐长的父母、可能结婚生子、买房买车带来的贷款压力等;另一方面,还要面对内心的压力——站在球场上,望着自己扭伤多次的脚踝,而止步于篮下与年轻小伙子们对抗,或是看着编程语言从 Java、C# 转向 Python,以及网络上每天讨论 AI 将如何取代人力的新闻,对自己的工作感到力不从心。
30 岁开始,不仅身体状态从“小鲜肉”慢慢风干,朝“老腊肉”的方向发展,新陈代谢开始下降,许多东西变得忌口。更重要的是,在上述的责任或压力下,越来越需要强迫自己做一些原先不喜欢的事情——有着远较过去为多的“身不由己”,但生活总还是要继续。

再来看看“程序员”(程序设计员、软件工程师)这种生物:
因为工作的缘故,除了打字快与颈椎痛,我们还必须擅长逻辑思考与解决问题:理性、冷静(多半时候)地面对各种突发状况和危机。
但也正因为总在屏幕后面写代码,我们习惯于代码单纯的输入(Input)与输出(Output),而不是人类复杂的心理和社交规则,造成在 Google 中输入“程序员”或“工程师”三个字,在搜索结果中,总是能看到其“独特”的“异性交友状况”与“闷骚”特质等刻板印象。
换言之,在面临 30 大关的当下,通常已经在工作上有了一定基础,却也开始担负更多责任与压力,加上外在环境不断在改变、后起之秀不断冒出来,但外界定位与自身定位下,似乎又不容易再有“转换跑道”的机会——此时作为一个程序设计员,该怎么规划接下来的职涯,才能让自己更加安心、笃定一点呢?
以下笔者尝试以个人经验与观点,试图回答这个“大哉问”:
Hadrian@Shutterstock
传统职业规划面临挑战,要培养“见招拆招”的能力
关于程序设计员或工程师的“职涯展望”,最传统的二分法,就是规划成为“专家”(Expert)或是“主管”(Manager):
前者,是成为精通任何当红前后端语言的“技术大神”;后者则是懂得如何人事管理,沟通协调,“顾全大局”的管理职务。前者就像是球队里面的“球星”,负责在技术前线厮杀;后者则像是“教练”,专门管理一整队的球星,不要让他们只专注于“炫技”和“互相呛声”,而是能够在赛季末取得冠军的殊荣。
两者的修炼之路都不容易,但市面上已有许多鸡汤书籍,教你如何“更认识自己”,并在这两条路上“出奇致胜”,在此就不多做赘述。
本文希望从另一个角度来看这样的“职涯规划”,而这会关系到你的世界观:到底世界上的事情,有多少是可以准确预测并且事先规划的?
如果你认为自己可以预测大部分的趋势,那么便可以专心根据你的程序员特质,在职涯发展初期,就锁定未来的目标(成为“专家”或“主管”),并据此描绘出未来三到五年自己的工作想象,埋头朝着目标前进。
但如果你认为这世界的路径,不可预测的事情将更有可能重新塑造你的环境和你自己,则你会更需要随时拥有一些特质——
它们并不一定是所谓的“硬能力”(hard skills),反而更接近让你能随机应变、见招拆招的“软实力”(soft skills,又称非技术技能)。
“好奇心”与“观察力”,说来抽象但无比实用的“软技能”:
我认为这些特质,至少包含了“对事物的好奇心”与“锐利的观察力”。
这两件事情,我完全理解可能对凡事习惯实事求是的“科技人”来说,有点太过抽象或“文青”,但其实,它们是非常实际的“能力”:
首先看看为何我们需要“好奇心”:理由很简单,因为周遭环境一直在改变,且近年来变化的速度已经越来越快——
前几年,科技巨头与大半产业,还在一窝蜂地流行 AR/VR、智能穿戴、共享经济,今年初,却瞬间转向为 AI 人工智能——产业风口最需要的人才、关键能力,跟着“大风吹”。
常保对事物的好奇心,能够让你一直更新信息,除了知道今年流行什么以外,更可以产生“知道自己无知”的良性压力——这样的良性压力会促使你去学习更多的东西,无论是“管理新世代人才的技巧”或是“新的编程语言技能”皆然。如 Steve Jobs 所说的“stay hungry, stay foolish”,我的“另类浅白”解释是:“越饿就会吃越多,吃越多会越胖,越胖就会吃更多,对知识的渴求也是这样。”
而好的“观察力”,能够让你分辨如今近乎无尽的信息中“真实有用”的信息,并且过滤掉那些短暂、浅碟的“杂音”,进而化为具体行动、先驰得点——
拿美国职棒来比喻,这就像是站上打击区的打者,有能力选择在看似好球的坏球下坠前忍住不出棒,而在失投球时一棒咬出全垒打墙外(Darvish 此时就哭哭了)。
培养上述两项特质,能让你更有机会在潮流开始以前,顺势而起——就像是抓住市场痛点的新创公司,野蛮生长一样。
我个人的经验分享:
我知道上述的分享可能还是太过抽象,那么在此尝试分享个人的(不)成功经验吧:
我是台湾大学财金系毕业,刚开始寻找工作不久,却马上遇到了“华尔街几乎没人想到”的金融海啸,被迫转行到必须面向人群、而非数字的业务工作。
但随着自知性格与志趣不在此,我又开始了捉襟见肘的边创业、边读研究所的生活。
今年,我 30 岁,来到了新的城市,有了一份新的“数据分析工作”——这是 20 几岁的我,完全没有料想到的。
从金融到业务到学术到资料分析师兼程序员,回首过去,虽然我没有准确预言到未来的大趋势,却感谢自己始终拥有学习新知的热情,和不断进步的观察力,才能顺利转换跑道:
从念研究所以前,我就利用当时很流行的线上教程 Coursera 来学习像是“逻辑”、“编码”等本科从来没有接触过的科目,而直到现在,也都还是会利用像是 Lynda 或是 Udacity 这样的平台,学一些新的技巧和知识。
同时,我大量地订阅不同的综合型媒体,以及与自己领域相关的专门信息,给自己一段时间消化筛选后,再排除掉不必要的内容,并且持之以恒地保持信息来源的畅通与多元——这也给了我紧跟趋势变化,并慢慢能够培养洞察趋势走向的能力。
而上述这些特质与习惯,是我希望自己继续拥有的,特别是持续学习新知的热情。
虽然我现在还没有足够的“高度”或“成就”,让你知道 30 岁的我,这样规划未来会是什么结果,但我有自信,对如今 30 岁的(伪)程序员如我而言:学习就是我的犒赏,未来仍然有无限宽广的机会。

夜雨聆风