有一些朋友觉得程序员月薪3万很难做到,其实,月薪3万是可以一步一步谋划出来的。个中关键,从大的方面来说,有两点:
个人商业价值的挖掘与修炼
职业机会的探索与把握
在展开之前,我们需要先澄清三个问题:
商业价值包含哪些因素
职业机会包哪些要素
内生涯与外生涯是什么
本文整体上分为两部分,第一部分,是和大家一起弄明白上面三个概念;第二部分,我们会一起研究如何通过商业价值的挖掘、内生涯的修炼以及职业机会的寻找来实现薪水月薪3万的目标。
本文为万字长文,如果你没耐心看这么这么多干货,可以跳转到最后,那里有一个归纳总结,是压缩饼干式的超级干货,可能合你的胃口。
小米在发展过程中,挖过两个比较著名的人物,一个是谷歌 Android 副总裁胡戈·巴拉,一个是新浪总编陈彤。我们来看两个问题:
小米看上了这两个人什么?
这两个人看上了小米什么?
胡戈·巴拉身上有几个很有价值的点,这是他能加盟小米的关键:
在谷歌工作5年
Android产品管理副总裁
Android操作系统团队最具代表性的公众人物之一,他曾经频繁出席谷歌的新闻发布会以及谷歌的I/O开发者大会。比如Nexus 7平板电脑就是由他登台演示。
熟悉海外市场
相信这也是小米看中胡戈·巴拉的重要原因。而这些原因,其实就是胡戈·巴拉身上体现出来的商业价值。具体来看,谷歌的工作是其个人经历,为其积累了广泛而有价值的人脉,同时他也在Android产品管理方面有独到的知识和技能。
好啦,注意我加粗的四个关键词,这就是个人商业价值当中的四个要素。
个人商业价值中还有非常非常重要的一个要素,那就是是天赋。天赋指人与生俱来的某些特质。在胡戈·巴拉身上来讲,人际交往能力和个人形象气质就属于天赋。在姚明身上,他的身高算是天赋之一种,特别有助于他的蓝球事业。在罗纳尔多身上,他的爆发力就是天赋,所以你经常看到他突然加速把对方球员摔在身后然后狂奔几十米形成单刀射门的优势。如果一个人能发挥其天赋,将其与职业关联起来,必能自我实现,有所成就。
总结一下,商业价值包含五个要素:
知识
技能
天赋
经历
人脉
我们每个人身上都有这些东西,如何挖掘出来,如何着重培养某方面的价值,就是我们能不能获取高薪水的关键。
现在我们看看胡戈·巴拉为什么会选择小米。我猜测有这么几点:
小米处在中国这个经济快速增长的发展中国家
智能手机的发展在中国处于上升期
小米公司上升势头强劲
负责小米国际业务拓展
薪水可观
第一点是很宏观环境的东西,只有宏观环境足够好时,机会才会多。这也是为什么现在小米等手机厂商发力印度的原因。
第二点是产业环境,在一个好的宏观环境里,一个好的、处于快速发展期的产业是最有吸引力的,到这样的产业中去,个人必将随着产业的发展而有所成就。所谓站在风口上猪都能飞起来,就是这个道理。
第三点是可以说是组织环境,一家处在好的宏观环境下好的产业环境里的公司,又正处于上升期,对个人来讲,是天赐良机啊。到这样的公司里,你就是躺着不动都可能比一般人达到的高度高。
其他都是小米提供给胡戈·巴拉的职位相关的东西,属于职业资源。另外还有一点,是八卦了,据说胡戈·巴拉的前女友阿曼达·罗森博格曾与布林交往,这也可能是胡戈·巴拉从谷歌离职的原因之一。这一点其实关系到的是家庭环境,一个人的家庭,可能成为他选择新职业的助力,也可能成为阻力。比如有很多学生毕业后就被父母通过人脉安排到银行、电力等国有企业工作,如果他们要跳槽,父母一般都会成为阻力。
好啦,现在职业机会的五个要素都出来了:
宏观环境
产业环境
组织环境
职业资源
家庭环境
陈彤的事儿我们就不说了,先看内生涯与外生涯了。
内生涯与外生涯是职业规划中非常重要的一组概念,理清了它们,我们就知道在哪个方向上努力可以提升自己,进而提升薪资待遇。
内生涯与外生涯,最直接的区分,就是用你的身体,我们常说的身外之物,其实就是外生涯。我们常说的内在,就是内生涯。比如你现在是华为的软件工程师,负责相机模块开发,月薪20K,这属于外生涯;而你熟悉C++、Android的Camera框架、图像处理算法,这些就属于内生涯。
属于外生涯的那些身外之物,是别人、别的组织给予你的,很容易因为外界环境的变化而被剥夺。比如你曾经是诺基亚北京研发中心的开发人员,那2014年8月份诺基亚北京研发中心大裁员,你就会瞬间失去这个身份。
而我们归属于内生涯的那些内在之物,一旦拥有,就是你的,别人很难夺走。比如你掌握C++这门语言,熟悉了Android应用开发框架,精通数据库调优,你工作负责,为人诚信,用于担当,这些知识或技能或心态,别人不可能从你这里拿走(除非他有黑衣人的记忆消除棒或者他是吸血鬼日记里的斯特凡或达蒙,拥有擦除记忆的法力)。
现在对内生涯和外生涯我们应该比较清楚了,那我们来总结一下它们都包含哪些内容。
外生涯包括(但不限于)职务目标、经济收入、工作内容、工作环境、工作时间、工作地点、企业文化、薪酬福利、通勤状况等。
内生涯包括(但不限于)知识、技能、工作经验、心理素质、内心情感、行为习惯、视野、观念、职业心态(爱与感恩、责任、忠诚、诚信、勇气、担当)、职业成熟度、心灵成长等。
如果你仔细品味内生涯包括的东西,就会发现,它们和个人商业价值的某些要素是重叠的,尤其是知识、技能、天赋这些东西。而外生涯包含的一些东西,其实也和个人商业价值相关,比如你的职务目标、工作内容、工作过的企业等,都是你的经历。你在选择一份新的职业时,不论内外,只要能体现商业价值的内容,都会被重度参考。
我们知道了内生涯和外生涯都包括哪些内容,接下来就是它们之间的关系,弄明白它们之间的关系,就可以导出如何规划自己的职业发展与方向了。
内生涯和外生涯包含的一些东西,既可能是企业选择你的依据,也可能是你选择新职业时的目标,影响你的职业选择。比如你在22~24岁时可能更看重知识、技能、工作经验的积累,积累到一定程度,你的职务目标、薪酬就会自然上升,工作内容也可能发生变化。而当你的职务、工作内容,也会影响到你积累什么样的知识和技能。
举个我自己的例子,我2005年开始做软件开发,做了两三年,积累了C++、Windows开发、网络编程、MFC、WTL、Windows CE、多媒体等方面的知识和技能,2008年时开始带团队,工作内容分成开发和管理两部分,慢慢积累了项目管理和团队管理方面的知识和技能。在这个变化过程中,经济收入也发生了变化。当我再次选择职业时,我的知识、技能、曾经的工作经验、薪酬福利等,共同决定了我能找到什么样的职业:别的企业会看我的知识、技能、经历,我也会本着个人商业价值可持续发展的角度去选择职业机会。
OK,现在可以来说明内生涯和外生涯的关系了:
内生涯决定外生涯
外生涯拉动内生涯
《花千骨》中有几段特别有意思的情节,可以印证内外生涯的关系。
花千骨投入长留,可她【仙资】有限,修行【飞剑术】,好久也飞不起来,在仙剑大会上败给霓漫天,却因缘际会得白子画收为徒弟,此时她作为【掌门首徒】,受到了很多人的质疑以及霓漫天的陷害。为了拿走花千骨掌门弟子的身份,霓漫天用涂了洗髓散(尹上漂提供)的毒针暗算花千骨,令其失去仙资。白子画耗费百年修为帮花千骨驱毒,不但恢复其仙资,还打通了她的【仙脉】,为其日后精进奠定坚实基础。
注意我标注重点的那些词,仙资、仙脉属于天赋,飞剑术属于技能,都是内生涯里面的东西;而掌门首徒则是身外之物,是别人赋予花千骨的一种身份,代表一种地位,是外生涯的东西。
只有飞剑术到一定程度,才有资格做掌门首徒。这是大部分人的看法,是内生涯决定外生涯的原则影响了人的看法。当内生涯低于外生涯时,如果个人不能很快通过修行提升内生涯,就会面临各种痛苦和压力:别人会质疑,为毛你嘛都不行还能当掌门首徒,尸位素餐,给我下来;自己也会怀疑,我到底是不是这块料啊,我如果真的不行怎么办呢。而一旦因为各种原因,内生涯真的配不上外生涯,那组织、他人就会采取措施剥夺你的外生涯。
古代的学而优则仕,也是内生涯决定外生涯的一种典型情况。其实我们身边也很多,普通的开发工程师知识、技能、经验修炼到一定程度,就可以做架构师、技术专家,这也是典型的内生涯决定外生涯。
当外生涯高于内生涯时,虽然有压力,但也会促使你提升自己的知识、技能等,使内生涯与外生涯匹配,最终内生涯超越外生涯,可以进一步在组织内或组织外发展,获得更高的外生涯。这就是外生涯拉动内生涯的一种表现。
说到这里我们再展开一下。当内生涯略高于外生涯时,工作会驾轻就熟,容易出成绩,感到轻松舒适。当内生涯高过外生涯一大截时,个人就会觉得怀才不遇,想谋求更高的发展,如果长时间处于失配状态,跳槽指数就会增高。当内生涯低于外生涯时,工作会感到吃力,需要不断提升自己。如果不能有效提升,就可能会被剥夺外生涯。
因为内生涯决定外生涯,所以,程序员要想获取高薪,最根本的策略是修炼内功,发挥自己的性格优势,挖掘自己的职业兴趣,找到适合自己的职业,发挥天赋,不断提升知识、技能,让自己的商业价值不断爬升。
而一个人的商业价值能否提现出来,和所处平台又有非常大的关系。当你在一个好的宏观环境里,在一个前景光明的产业里,在一个处于上升期的企业里时,你的价值很容易就能体现出来,你能获取到的回报(外生涯)也会超越大多数人。所以,除了修炼内功,还要懂得如何寻找职业机会,让自己有用武之地。这就是程序员谋取高薪的指导性原则。
下面我们展开来讲如何修炼内功以及如何寻找职业机会。
内功的修炼,其实又分为三部分:
发挥性格优势
挖掘职业兴趣
积累知识和技能
假如你现在已经是软件开发工程师,那我们就略过第一和第二两步了。
假如你是还没入职场的小鲜肉,OK,可以来找我聊聊,我们可以一起来看看你是否适合做程序员。
搞了这么多假如,那我们要关注的就只有第三点了,积累知识和技能。哇哈哈哈哈,终于到正题了,走,西天!
积累知识和技能有两个原则:
职业目标相关性
持续性
有人说程序员是最爱项目符号列表的,凡事1、2、3……你看我这篇文章就能推断出,我一定是受了程序员工作经历的熏陶了。
这一点很容易理解,假如你就想做iOS应用开发,那你学C#估计就没什么用,学MFC就更没用了。一样知识,一种技能,只有它和你的目标相关时才是有用的。没用的知识对你来讲,再多都是枉然,假如一种知识不能落到应用上,那它就不是知识。我这是针对职业相关性来讲的哦,这句话写给那些爱抬杠的朋友们。
技能呢,其实又分为两类:
专业技能
通用技能
专业技能是对某种专业知识的应用能力,与特定职业相关。比如磨剪子镪菜刀(现在很少了),你不走街串巷干这个行当,基本就没用了。再比如你能用MFC在Windows下开发客户端应用,现在你要去做Android开发,那用处也不大。
通用技能是可迁移的,就是你会做的事。比如你超级会写PPT,这种技能到哪里都用得上啊。比如你很善于沟通,总能与别人达成一致;比如你善于当众演讲;比如你社交能力强;比如你很会指导别人;比如游泳……这些都是通用的技能,可以在不同的工作中广泛应用。
通用技能对于你能否找到理想工作至关重要。
我们从程序员的世界来看,那些很牛X的人,比如马克·扎克伯格,一开始也是程序员,后来呢,人家创立Facebook,他的创新、谈判、指导、说服等通用能力一定很强。另外他还会中文(语言技能也是通用技能,和驾驶一样),可以用中文和习大大流畅交谈。还有雷军,写了十年程序,现在在做什么呢?如果他只会使用C语言开发能这样吗?
所以,我们在积累技能时,既要立足于现在的职业,强化职业相关的专业技能,比如你做Web前端的,HTMP、CSS、JavaScript、各种JS框架(比如JQuery、AngularJS等)、前端框架如Bootstrap,都可以玩得很熟,这是专业技能,必须的,你做前端就会用得上;又要留意专业技能之外的通用技能,通用技能是一个程序员的软实力,比如发现自己的学习模式,培养自我学习的能力,比如与人沟通的能力,比如口头表达能力,比如写作能力,比如信息检索能力……
那么,问题来了,怎样才能知道,一个职业都需要什么样的知识、技能呢?有三种途径:
企业内的岗位描述
业内前辈访谈
招聘网站的招聘信息
一般的企业都会有岗位(职位)描述,说明这个职位的职责,需要的知识、技能。有的企业还有一条晋升通道,比如软件开发工程师会有初级、中级、高级、资深、专家等级别,每个级别的任职资格说明里通常会有对技能水平的说明。这是我们第一个可以接触到的资料。比如我曾经待过的公司就有这种说明,高级开发工程师会要求你C++、概要设计、文档、数据库调优、授课、指导、管理等知识和能力。
第二种途径是找一个同岗位的前辈聊一聊,他很可能会给你和第一种途径不一样的视角,根据他的经验告诉你什么重要什么不重要,该培养什么不该培养什么。
第三种是非常有效的途径,不但可以弥补第一种途径的不足(有的公司会没有,有的公司会很简单而流于形式),还可以从中梳理出某个技术栈的发展态势。像智联招聘、拉钩、猎聘、大街网、51job等网站都会有大量软件开发工程师的招聘信息,可以结合我们自己的技术方向,拟定关键字进行搜索,然后看看别的企业对某个岗位都是什么要求,通过不断分析,就可以列出一张知识、技能清单来,拿着这个清单,就可以去有针对性的发展自己的技能,该自学的自学,该培训的培训,该参加开源项目的参加开源项目……
植物的顶芽优先生长而侧芽受抑制的现象,在植物学上称为顶端优势。为了维持顶端优势,可以人为干预植物的生长,比如一颗泡桐树,要想它长得又高又直又粗,就需要不断砍掉树干上的侧枝。
在企业管理领域存在顶端优势现象,处在优势的实权部门会抑制其它相关职能部门的发展,处于权力顶端的人往往抑制着处于下端的职权,处于优势的核心产品也会抑制其它产品的发展壮大……
对于程序员个人的知识和技能积累来讲,通常也需要维持顶端优势。
一个软件开发工程师,在自己知识图谱与技能树中,如果存在顶端优势现象,那当别人问你擅长什么时,你就可以信心满满地回答出来。而如果你的知识和技能还能在企业内超越其他程序员,形成群体内的比较优势或者顶端优势,那你的光芒一定照耀四方。
我承认,能做到第二步这种程度的人相对较少,所以,我们只讨论第一步:在自己的知识图谱与技能树中打造顶端优势。
毋庸讳言,软件开发工程师跳槽频率比大部分职业的从业者高一些,在不同的企业不同的行业为不同的用户开发不同的产品时,用到的知识和技能通常是不同的。这就会导致一种情形:什么都懂一点,什么都不精深,什么都能干一点儿,什么都干不专业。而知识越精深越有价值,技能越熟练产出率越高,现在以及将来是专业主义时代(参见大前研一的《专业主义》),如果我们能沿着一个方向积累知识锻炼技能,那就可以形成竞争优势,随着不断用心打磨,就会产生顶端优势,就越来越能解决问题,不可替代性就会越来越强,商业价值就越来越高,薪酬福利自然越来越好。
所以,工作一段时间之后,就要思考自己的职业目标,梳理自己的知识和技能,选择几样,着重培养,持续精进,形成优势。
修炼完内功,我们该来寻找外部机会了。
在向外看寻找机会时,有三个递进的层次需要注意:
行(产)业
企业
职业
我们一个一个来讲。
现在软件已经成为支撑各行各业发展的服务,几乎每个行业都会用到软件。行业里的企业在使用软件服务时,要么买现成的,要么自己开发。现成的软件,比如CRM、ERP、OA等,很多行业里的公司都用,也一般都是采购。除了采购软件,还有一些行业的公司选择自己开发,那这个时候就需要软件开发工程师,也就是程序员了。
必须注意的是,不同行业的程序员的平均薪酬待遇是相差很大的。行业越有前景,个人的发展越好回报越好。越赚钱的行业,处在它里面的程序员薪资水平越高。 这是一般性规律,我们程序员在择业时也需要考虑。
以房地产行业为例,2003到2013是中国房地产黄金十年,处在这个行业里的从业人员,有很多都赚得盆满钵满。以商品房销售为例,售楼小姐曾经是收入非常高的职业,干上一两年,拿到的提成都能买几套房。房产中介也有同样的机会,我买学区房时,提供服务的房产中介,他们的片区经理,就是在那几年赚了两套房子,过上了相对丰裕的生活。而2013年后,房地产销售每况愈下,现在几乎是举步维艰,我们家楼下的房产中介每天门可罗雀,今天开一家,明天关两家。新建住宅也是人流稀少,销售惨淡。
再说说我曾经待过的电信行业,1995年到2012年是黄金阶段,其中1997到2005年,是固定电话业务和宽带业务大发展的时期,国内产生了华为、中兴、西安大唐电信、普天、UT斯达康、烽火等知名企业。我的前辈们说,1999、2000年左右,奖金比工资多,出差都是飞机,每天补助200左右。而我2002年加入西安大唐电信后不久,固话和程控交换业务开始走下坡路(2002年之后移动通信大发展),我们出差都是火车,坐卧铺都受限制,出差补助不但按城市分档还变少了,票据报销也很严格。所以,你进入一个产业的时机非常重要。
那么,我们该怎样选择行业?
先看一张图:
从上面的产业曲线图中可以看出,一般产业都有形成、成长、成熟、衰退四个时期。我们在选择一个产业时,成长(发展)期进入是最好的,成熟期也可以,衰退期就要慎重考虑了,除非你已无太多要求,只想随便干两年退休。
所以,作为程序员,也不能只盯着技术,还要看行业大势。“女怕嫁错郎,男怕入错行”这种老话是很有道理的。
现在(2015年),最有发展前景的行业是互联网、金融、医疗、教育、新能源、智慧产业、高端制造等。而一些传统行业,比如煤炭、电力、房地产、石油,都在走下坡路。再说下房地产,别看那些楼盘死撑着不降价,其实一个月也不见得卖出一套房去,很多房地产厂商想跑路都跑不掉,工地停工,薪资拖欠,各种新闻不断。
2002年到2012年,移动通信黄金十年,最赚钱的公司除了中国移动,还包括一大波2G手机厂商以及其他设备厂商,西安大唐电信没能及时转型,迅速没落,原来的产业园都卖给陕鼓动力了,而华为则顺利转型,依然强劲,到处买地建园区,如日中天。一个程序员,在西安大唐电信和在华为,这么些年的感受肯定不同!
与行业类似,企业有投入、成长、成熟、衰退这样的发展周期。我们选择企业时也需要考虑目标企业的当前状况,是在快速成长还是正在衰退。对不太有冒险精神的程序员来讲,最好的进入时机是快速成长期,此时企业飞速扩张,各种机会很多,产品要不断迭代要形成技术优势,对技术人员需求很大,职位上的晋升,技术上的积淀,都会有很多哦。对于想拿青春赌明天的程序员来讲,也可以在一个公司的投入期进入,如果这家公司能突围,那作为初期的核心人员,回报是难以想象的。你只要看看阿里巴巴的十八罗汉就知道了。
选择朝阳行业,选择非衰退期的企业,这是寻找职业机会时必须要首先考虑的,只要你选对了行业进对了企业,个人的成长和回报是早晚的事儿。
我们还要展开来说一下,行业是由若干从事同一类或相近性质产品生产的企业组成的,在这些企业当中,一定有龙头老大,一定有前三甲,一定有前五前十,选择排名靠前的企业,一般来讲会更好一些。因为实力越强的企业,占有的资源越多,市场覆盖越广,盈利能力越强,现金流越好。企业盈利,企业现金充裕,员工收益自然也大。
可我为什么说一般呢?因为一个行业还有细分,还存在一些垄断细分领域的企业,虽然在整个行业中综合实力排名不靠前,但因为卡位好,此山是我开此树是我栽,要想从此过留下买路财,你想干那个领域的事儿就绕不开它,所以它也能活得很滋润。选择这样的企业,也相当不错。
选对了行业,选对了企业,接下来就是选择企业内的职业了。
前面我们说互联网行业很好,金融行业很好,互联网金融也很好,你进了这些行业中的某家企业,也不一定有什么大发展。因为这里面还有职业之分。比如你在Camera360做前台,比如你在网易做行政专员,比如你在腾讯做保洁,是不是回报没那么高呢?
在一个企业里,一定是创造价值最多、距离核心价值链最近的职位的员工拿到的薪水最多 (你要说有例外那我就认为你是在抬杠,不解释)。
有人说对于程序员来讲,根本没得选择,因为到哪个企业里都是做开发啊。
其实不然,还是有得选的。
比如你到一个房地产公司去做网站前端开发,你觉得怎么样?房地产公司最重要的部门是什么?肯定不是维护网站的技术部啊,你作为一个软件开发工程师,很可能受到的尊重拿到的薪水远不如销售人员。
对互联网公司来讲,最重要的是产品,那就对应有两个职位——产品经理和软件开发——很受重视。所以你到这样的公司里去做软件开发,就和到房地产公司感觉不一样。
再说说我们前文提到的华为,华为内部有核心网、终端、大数据等不同的部门,你觉得哪块的软件开发待遇更好?我猜是大数据和终端。
现在再来想,是不是有得选呢?
补充一点:其实我们在选择行业和企业时,还要考虑宏观环境里的地域因素。比如你在西安,互联网氛围就不太好;比如你在郴州,整个软件行业就很差……所以有时为了更好的发展,有些程序员会选择到机会更多的城市,比如北京、上海、深圳等。而如果你不想换城市(像笔者一样),有时就得妥协喽。
我写文章经常放而不收,下笔千言离题万里,遭人诟病,这次我要学乖一点,来总结归纳一下。要点如下(符号列表,又见符号列表,符号列表让没有逻辑的我显得有条理):
个人的商业价值体现在知识、技能、经历、天赋、人脉等方面
宏观环境、产业、组织、职业、家庭等要素的综合会影响职业选择
知识、技能、天赋、经验等属于内生涯,是你的内在质量,没人可以剥夺
职务、薪酬福利、工作环境、工作内容等属于外生涯
内生涯决定外生涯,外生涯可以拉动内生涯
通过对知识、专业技能、通用技能等的不断积累,形成顶端优势,可以找到更好的外生涯目标
累积知识和技能时,注意职业目标相关性和持续性
要想高回报,选择前景好的行业里处于投入期、成长期的企业,在企业内选择靠近核心价值链的职位
— End —
新人手册:
想获取更多免费学习资料,每周参加优质的免费公开课?赶快扫码关注“StuQ”公众号吧!
部分图片来源:网络