我们在面试时经常会被问到一个问题——“你未来五年的职业规划是什么?”很多小伙伴不理解HR为什么这么问,也不知道怎么回答。
实际上,即便HR不问,我们也应该多多想想这个问题。因为它指向的是我们自己的职业生涯规划。
有明确清晰的规划,我们才能走得更顺畅、更高效、更长远。
那怎么做职业生涯规划呢?
这里提供一个非常简单的模型:现状-路径-目标。
我们以汽车导航为例来说明这个模型。
我在西安,要开车去革命圣地延安,会打开高德地图,搜索到延安,设置为目的地,然后选择开始导航,高德地图就会先找到我所在的位置——高新四路和科技路十字,然后帮我找到一条路线,通往延安。
这个规划导航的过程,就是职业生涯规划的过程:确立目标,确认当下的位置,从当下的位置规划出去往目标的路径。
职业生涯规划从逻辑上看就是这样,人人都可以为自己规划。但我们常常说不上来自己的职业规划,是为什么呢?
最关键的原因是:找不到目标。
所以,这里要教给大家一个简单好用的方法:对标法。
所谓对标,就是对比标杆找差距。只要你找到标杆,就可以找到目标。
我给大家准备了三种寻找标杆的方法:
1.程序员职业发展的四个阶段
2.公司内的下一个职级
3.榜样
接下来我们展开来说下这三种方法,最后,还有提供一个非常有价值的工具——职业规划地图。
1.程序员职业发展的四个阶段
在职业生涯领域,美国的著名学者舒伯提出过一个经典的理论:生涯发展阶段理论。我们参考它,可以把程序员的职业发展分为试行、确立、安定、保持四个阶段。
⑴22~24,试行阶段。
这个阶段最主要的任务,是探索“软件开发是否适合我?”、“什么技术栈适合我?”、“什么领域适合我?”这三个问题的答案。
在探索的过程中,还要在专业技能上打好基础,能够掌握一两种编程语言,熟悉一个技术栈,可以胜任别人安排的一般复杂度的任务。
这个阶段还有一个非常重要的事情:培养自主学习和解决问题的能力。
⑵25~30,确立阶段。
这个阶段最主要的任务有两个:
一是在探索的基础上,选定一个技术领域,深入积累,形成自己的优势标签,比如有的人成了自己团队里的Spring Boot专家,有的人成了自己公司的Golang布道者,有的人吃透了业务技术也很赞。
二是探索自己未来的发展方向,是走技术路线,还是走管理路线。
这个阶段的后期,我们要能够理解业务和架构,有产品和设计思维,有大局观和一定的高度,变得和前一阶段不一样——我们得有负责较复杂模块的能力,能够指导处在前一阶段的程序员。
注意,从这个阶段后期,我们要开始关注专业技术之外的东西,比如管理、沟通、演讲、规划、产品等等通用能力。因为职场后期的天花板,往往是因为缺乏通用能力造成的。
⑶31~40,安定阶段。
这个阶段,无论你走技术路线还是管理路线,方向都应该比较明确了,主要任务就是全情投入,积累优势,形成地位。
走技术路线的,成了某一技术方向的专家或者解决某一类问题的专家,有较强的技术影响力。大家遇到你精通的那个领域的问题,都会来找你咨询,你成了提供意见和指导的那个人。
走管理路线的,成了架构师或中层管理人员,能够很好的组织协调团队的力量完成公司的目标,一个新的产品或项目过来,能够迅速理解业务、拆分业务、形成技术架构、组织开发力量执行架构,最终顺利完成目标。
在这个阶段,你的目标就是致力于成为团队的领军人物。
⑷41 ,保持阶段。
这个阶段的首要任务,是竭尽所能保持自己的地位和优势。
做技术的,要继续深挖,将影响力从小团队扩大到公司、从公司内扩大到公司外,同时也要提升高度和宽度,还要培养提升诸如辅导、讲授、演讲、展示、沟通等等通用能力。
做管理的,要提升管理能力和领导力,从带小团队到带大团队,从管一个项目到管理项目群,从带一线执行者到管理基层管理者。
程序员职业发展的四个阶段是由前而后依次展开的,前一阶段的发展情况会影响后面的阶段。
假如你在确立阶段没有做好,一直没完成探索,没找到方向,来来回回换,那你的确立阶段就很难立起来,肯定会接着探索。
假如你在确立阶段没能成为一个熟练的开发者,没能确定走技术路线还是管理路线,那后面的安定阶段就很难集中精力快速突破建立优势。
假如你在安定阶段没有形成优势,就不会有保持阶段了,而是会迅速失去性价比,飞快地贬值,进入衰退阶段。
这四个阶段是一般性规律,你可以对照它们,发现自己所处的阶段,了解这个阶段的关键目标,结合自己的情况,形成自己的目标。
2.公司内的下一个职级
多数公司都会为员工设计职业发展通道,常见的有专业通道和管理通道。每个通道都会设定一些职级,指导员工的发展和晋升。比如阿里的工程师通道,职级从P3~P10;管理人员通道,职级从 M1~M5。
每一个职级,都会有职级描述,其中一定会有这个职级的入口条件。
我们从职级序列和描述中,可以找到自己的目标。
以阿里为例,比如你是 P5(高级工程师),那你的下一个目标就是 P6(资深工程师,相当于M1)。你去研究一下P6这一级别的岗位定义和职能描述,看看它需要什么知识、技能、经验,作为自己的目标,制定针对性的获取计划。
这样,你就有了一个简洁有效的职业规划。
只要你每半年或一年规划一次,始终向前看,就会不断成长。
有的小伙伴可能会说:“我们公司很小,各项制度还不完善,根本没有职业发展通道。”那也没关系,你可以找其他公司的,或者再招聘网站上去找自己感兴趣的职位,看看这个职位对知识、技能、经验的要求,以它们作为你的目标。
3.榜样
榜样不是偶像,偶像只能仰望和膜拜,你很难成为他。榜样是你想成为并且通过努力可以成为的那个人。
比如你那个温文尔雅说话让人如沐春风的上司,比如你那个MyBatis特别精通的同事,比如你那个丰富微服务实践经验的架构师……
你以某个人为榜样,一定是有原因的:
要么你是直接因为某种能力将其视为榜样
要么你喜欢他身上的某种行为表现,而这种行为表现是经由某些能力组合起来造就的
要么你想担任他身上的某种角色
所以,请像庖丁解牛一样分析下你的榜样,看看你对他身上的哪些知识、技能、角色感兴趣。这些知识、技能、角色,组合起来,就可能成为你的职业发展目标。
在找榜样时,最好涵盖同级同事、上司、上司的上司这么三类,每类找一个榜样,这样可以从三个榜样身上挖掘不同的学习目标,整合在一起,往往会形成远近结合的职业目标。
4.职业规划地图
当你找到了目标,盘点了现状,就可以思考一下怎么从现在走向你的目标。
这里提供一个小工具——职业规划地图,辅助你记录自己的规划。
3个锦囊,妙助程序员职业规划
在我们的职业规划地图中,把职业目标分成了几个台阶(子目标),每一个台阶都关联有实现策略(比如学习新的工作方法、参与领导力培训、提升计划能力等),等每一个台阶都实现之后,就会抵达我们的目标。
最后提醒一点,地图是基础,更重要的是,执行实现策略,持续行动。
行动,行动,持续行动,才会引领你抵达目标。