亲爱的“程序猿”们怎么找工作
2002年,我大学毕业,找了份售后技术支持的工作。2003年的时候,奔波于河北维护程控交换设备。
我的第一份工作,是技术支持。干了两年多,觉得没意思,自己快被荒废了,于是决定转行做软件开发。先裸辞,后学了一星期C语言,幸好找到个公司肯接收我,谢天谢地,不然真不知道今夕何夕。那时被各种形势所逼,不得不换工作,所以虽然收入只有技术支持那份工作的1/3,我也接受了。
一开始我在西安做PC软件开发,后来离开西安,去了南京,搞嵌入式,做导航、MP4、车载电子,干了一年多,又不干了。裸辞,回到西安。
做什么工作呢?其实我这人比较随性,再度回到西安时,已是2007年年底,工作近六年了,也没正儿八经想过这些个问题。当年大学要毕业时,就更是少不更事了,人憨憨的,没见过世面也没什么想法,觉得有个事情干不错了。可人不能总这样,更何况我干了六年革命工作了。
后来我找了一家做WIFI芯片的外企,待遇不错,当时给我将近八千元的月薪,公积金也都挺高。后来找了家做外包的,待遇也还行。再再后来我又回到第一家搞开发的公司了,工资是谈过的几家公司里最低的。是的,最低的。
为什么呢?
是因为老板对我说要做产品,做一个视频相关的产品,具体是什么还不清楚。那时我虽然还有点儿糊里糊涂,听过很多道理,还没过好这一生,可毕竟已经不是懵懂少年,多少有了些自己的看法。我觉得做产品比较靠谱,比外包靠谱,比外企有更大的可能性,风水轮流转,也许就可以鲜衣怒马走天涯。
“有产品做,就不要做外包;有独挡一面的机会,就不要去做外企或者大公司的螺丝钉。”这是我当年的一个认识吧。
当然很多人与我见解不同,理解并支持你们!罗素说,参差多态乃幸福之本源。本来么,求同存异,不能视见解与己不合的人为异端。工作中其实也是一样的。
一转眼,到了2014年。从2008年到2014年,发生了很多变化,不仅老婆孩子都有了,白头发也有了。
我已经三十多岁了,对于开发人员来讲,这是非常尴尬的年龄。就算你是个一线经理,其实也还是个干活儿的。
有次和朋友吃饭聊天,说起我们这个年龄的技术人员的出路,不免相对喟叹。如果要找工作,其实挺尴尬的,继续做开发吗?已经做了几年技术管理,不想玩儿过山车了。可是管理工作本身很难做不说,机会也不是太多,这时就体现出差别来了:招管理岗位的,更愿意接收有大公司管理经验的人员。而项目经理之类的,多数是外包公司或者定制开发类的项目,与做产品的初衷不同。
话说到这里,想必你也猜到了,我做了六年的产品,产品没有大红大紫……
其实干什么都是有风险的,对于开发人员来讲,最大的风险是什么呢?是选错一门技术,干错一个项目,做错一个产品,还是跟错一个老板?也许都不是。
对于开发人员来讲,最大的风险是:在职业规划上没有延续性地乱跳槽。
有人跳槽为了涨工资,一年都能换几次,也不管工作内容、技术路线什么的。这其实也无可厚非。
我是一个比较迟钝的人,到了三十多岁才第一次正式地审视“怎样找工作、找什么工作”这个问题,可能是年龄大了吧,觉得不能再玩从零开始的游戏了。有人早慧,可能大学没毕业就明白了这个道理。我有一同学,毕业时放着微软不去,坚定地找嵌入式的机会,真给他找着了,并且干得风生水起。
当年我在参加一家公司的面试时对面试官说:要在两到三年内做到不可替代,结果被拒绝了,单位都讨厌这个。可是作为开发人员,这是你时刻要牢记在心的:培养自己的稀缺性。
为什么这么说呢?物以稀为贵。如果你干的活儿很重要,别人又替代不了,你自然会受重视。
如果你要寻找新的工作,此时一定要想:为什么跳槽?
是因为所用技术没有前景吗?比方说公司用DOS环境编程,或者一直使用MFC,这都是过时的技术,如果不喜欢,就早日找个与互联网或者移动相关的方向吧,或者行业性很强又产能不过剩将来有大发展的方向,比如机器人、自动化控制、智能医疗、在线教育、智慧城市……
是因为工作不愉快吗?这个就要仔细掂量了,任何工作、任何公司都有让人不愉快的地方,人最大的敌人是自己。因此一定要想明白,自己的心态或者策略如何改变,从而才能改变工作状态。凤凰涅盘磐,浴火重生。简单说,改变自己,改变世界。当然,如果无论怎么样,某种不愉快都无法忍受,那就早点走吧。
是因为个人没有发展前景了吗?比如职位上不可能再晋升,技术上不可能再进步,薪水上不可能再大幅增加等等,这个就要想清楚了。
是行业突然遭遇暴风雨,前途黯淡了吗?如果是夕阳产业的话,那就没必要留恋了。
是公司突然遭遇资本危机,一蹶难再振吗?这就要看你自己的判断了。
是因为薪资太低,同行业为相比较,缺乏竞争力,或者简单说,生活压力大,入不敷出吗?这没什么好讨论的,因为这个换工作很容易被理解。
总之,要换工作,一定要想明白为什么。面试时这也是经常被问到的问题。
决定换工作了,就要考虑找个什么样的新工作。此时你之前的思考就派上用场了。机会只青睐有准备的人。
假如你已经很清楚自己将来的道路,非常笃定,坚信不疑,那就好办了,一定要找到这样的机会,抓住它。此时你的稀缺性,无论是技术上的,还是思想上的,都可以帮助你找到好的工作。而你对职业发展连贯性的原则与思考,也会让你的焦点不那么散乱,能够做到有的放矢不盲目。
最后说一下我对好产品的理解,大概是这样的:
1.解决用户痛点。
2.所处行业前景光明。
3.产品有延续性,可持续性发展。
好产品加上靠谱的公司,基本上就是比较靠谱的工作了,甚至可以做成事业。
怎么判断公司是否靠谱呢?我有一些经验,用来鉴别不太靠谱的公司或工作:
1.只关注你过往能力和项目的匹配度。
2.只想用你已有的技术能力解决公司遇到的问题。
3.面试你的人对公司产品没有热情,自己都不了解公司的产品远景,也不了解公司的远景。
4.没有新产品,招聘是为了维护性开发。
如果新公司靠谱,有实力把这个产品做好,那最好。
那么怎样了解一个公司呢?通过互联网搜索、熟人打听、公司网站、招聘要求等,都是途径。还有一个途径就是面试。一定要牢记,面试是双向的,不单是公司选择你拷问你,也是你最好地了解这个公司的机会,有时机就问一些思考过的问题,这也是前面提到让你想清楚为什么自己要离开现在的公司、自己想干什么、将来的路怎样规划的一个原因。我在面试一些应聘者时,通常在最后会留机会让他们提问,经常遇到有些求职者说我没什么问题,这么好的机会都放过了,一般这种情况下,这个人我就不再考虑了。
说这么多,其实是想表达,开发人员,也是要不断挑战自己的,那种“今朝有酒今朝醉,明日愁来明日愁”的做法是要被摒弃的,所谓“人无远虑,必有近忧”。在这个瞬息万变的IT江湖里,如果你不能识别并不断加强自己的竞争力,任由时间悄悄流逝而自己始终滞留原地,想必过不了几年,就该感叹了。
写给已过而立的自己,也给看本书的你:工作不仅仅是谋生的手段,也是人生的意义所在,无论有多少原因让你决定换份工作,但请谨记,只有让你感到充实、满足、有归属感的,才是你应该追求的,因为,它将让你成为你自己。