前两天,在侯捷老师的读者见面会上,有一个程序员提了这么一个问题,他说他研究生学的是自然语言处理,现在找到的工作是网站前端Javascript的工作,他在想要不要换个工作。
另外一个程序员的问题是,他一直在钻研C++后端开发技术,但是现在老板要把他转到另外一个组,做前端的事情,他不知道该怎么跟老板沟通。
本来都是问侯捷老师的,我也回答了一下,在现场可能比较激动。侯捷老师很绅士的跟我说,不要对提问者那么激动,人家问这个问题也不一定就是没有想通,也许只是想看看别人的意见。
首先,我在这里给侯捷老师和现场的观众道歉,我情绪控制得不够好,表达方式过于简单粗暴。
今天,心平气和的在谈谈这个问题。
其实在中国的网络里,类似的提问很多,我相信在国外也不少,我在Quora也看到不少这样的提问。也有些跟我关系不错的小朋友,问过我类似的问题。
这样的现象为什么普遍呢?
首先,这是一个自由选择的时代。
如果我们都活在当年的那种大学毕业包分配的年代,你可能没有这样的抱怨。或者说,你知道抱怨也没有用,你只是国家的一颗螺丝钉,把你放在哪里,你就好好的在哪里待着吧。
但是事实上那样的时代,对国家,企业和个人都不好。说是国家哪里需要你,还不是一个领导拍脑袋,决定了另外一个人一生的命运。
现在的时代,你可以选择继续从事自己的专业,也可以选择做别的。你可以选择高薪高风险,也可以选择低薪低风险,一切都是可以选择的。如果你有本事,就不用太担心放弃一份工作以后,你就再也没有其他的机会了。
我有很多朋友都不来自于计算机科班,我大学是学机械的,霍炬是学暖风的,韩磊是学越南语的,等等。但是,如果你在技术上足够执着,足够努力,你还是可以在这个行业里面崭露头角。
第二,年轻人要明白老板开公司是做啥的。
我自己创业了两次了,第一次是因为金融危机,资金断链突然死亡;第二次则是,我自己选错了方向,同时执行的很差,我亲眼看着自己的公司从一开始的高歌猛进,到最后的黯然衰落,虽然最后我们抱住了公司和核心团队,但是这些教训我一辈子都会记得。
公司的第一要义是要挣钱。那些拿投资用免费产品圈用户的公司的核心目的也是挣钱,不过第一步是圈到足够多的用户,所以他的第一要义是增长。
公司当然可以有温情脉脉的一面,也当然应该考虑员工的成长,但是第一要义是公司自己的成长。公司倒闭,员工遣散的时候,谈什么温情脉脉也都是只是对员工的伤害而已。
我在行业中从业10多年后,最大的体会是,成长最快的方式是运气很好,加入了一个高成长的企业,并在企业的高速成长中,没有掉队撑下来。在99年到2000年期间,进入三大门户算是;我师兄进入腾讯算是;7-8年前进入阿里,等等。当然在这以外也可以获得成长,但是个人要付出的努力和获得的见识就要更多才可以。大潮汹涌,不能全速前进,就会被甩在后面。
所以,不要去抱怨公司给你的任务不是你的个人发展方向,大多数情况下,公司给你的任务,能发挥你现有的能力,你已经是很幸运了。你要找到一个人能充分看到你的潜力,按照你的发展方向,给你设计你的工作任务。真的很难很难。我的技术总监有这么幸运,但是他也用他的努力证明了,他值得我这么去培养他。
第三,没有人能管你下班以后做什么。
我在漫长的职业生涯开始之时,就不停的业余做很多事情,大多数到现在连发布都没有发布过。有些发布了,但是也不见得获得多大的好评。为什么我还在不停的做这些side project呢,因为我觉得生命短暂,我不想把时间都浪费在做一些我不喜欢的事情上。我用学习和努力来填补生命中的无聊时光。
一切都是学习。你学习到的东西,没有人可以让你放弃。那些东西才定义了你。
Sycx在我交派的项目最繁忙的时候,自学了Mac的新3D引擎,为了干什么呢?为了把一个3D的初音未来放在桌面上,看着他写代码。他本来告诉我的时候很扭捏,怕我骂他。但是我却很高兴。如果这么点冲动都没有,你怎么证明你热爱写代码啊?
而实际上对这个3D引擎的了解,对他未来的工作也产生了一些积极的影响。
我一只在说程序员是很幸运的,但是可能大多数人不自知。如果一个建筑师,跟自己的老板意见相左。老板认为这个建筑应该是圆柱体,你认为应该设计成圆锥体,你能怎么办么?你什么办法都没有,你只有把自己的图纸锁在柜子里面,因为你自己没钱盖起来证明你自己的观点。
但是程序员呢?如果你的leader说这个项目应该用多线程,而你觉得应该用多进程,你怎么办?你大可以按照他的做。然后业余做一个多进程的库开源掉,证明你自己的观点。我们写代码又不需要施工许可证,又不浪费钢筋水泥,还可以躲过无聊的国产电视剧,何乐而不为呢?
你的工作定义不了你,定义你的永远是你自己,定义你的不是你的老板和外界对你的认识,而是你对你自己的认识。