我不是一个可以讲大道理的「人生赢家」或者「长者」,只是你们经历着的事情,3年前我也经历过,offer越多越烦恼,尤其是没有杀手级offer时天天都只能纠结困扰。然而回头一想,有时候真的是自己想得太多了而已。所以,今天也谈谈我对校招offer选择的一些不成熟的微小的看法,也欢迎大家把我批判一番。
选择你当前最需要的东西
我当然更欣赏勇于去追求自己的梦想的你。当有一个好的offer时, 哪怕是要去帝都这样的城市,你也毅然前往。不过我也从来不认为现在的一个offer选择会成为你未来走向人生巅峰的障碍。阿里巴巴上市的时候,许多技术圈朋友感叹自己当年没有选择去淘宝,否则现在也走向财务自由了。而我觉得,即便你当初选择了淘宝,中间也有一万个理由离开。我们决定不了自己的运气。
生活和工作平衡,同时加上较高的收入,这是最理想的工作状态。平衡生活往往需要在一个你喜欢的城市里,如果你介意去北京,那么还是留在上海/广州/杭州/深圳吧, 留在一个有你亲人基友同学的地方,在一个你更愿意长期发展的地方。当地域成为你当前诉求中一个重要因素时,就可以缩小你的选择空间。有个同学说他想找个浙大的女朋友,我说那肯定去网易/阿里/蘑菇街这些公司啊, 可是他又纠结说他想学技术, 我只能问他难道阿里的技术不够学么?
薪水当然是最重要的,没有人不喜欢钱。许多连C轮都没走到,愉快地烧着VC钱的公司,大方地给应届生开出了远高于BAT的薪水,让人很难不动心。可是当下你真的有那么需要钱吗?如果答案是肯定的,那很简单,选钱最多的一个!如果你并没有什么经济负担,一个月多5K少5K本质上没有影响到你的生活,那么,一定要跟那种花几百万请王宝强孙红雷田亮过来说一句广告词的创业公司说不!
这里顺道分享个案例:某同学收到某不靠谱创业公司开出的18K的offer,百度开出的14K的offer。表面上看来百度的钱少好多,但是实际上该创业公司的社保公积金都按最低标准缴纳,比如公积金每个月总共才两三百块,但是百度每月给你缴纳的公积金公司那份就有差不多2000,同时你的医保和养老金也会多出几千块,另外公司还给你买了商业医保,这么一算,你觉得如何呢?
做自己最擅长和有兴趣的事情
许多游戏公司给应届生开出了远高于预期的薪水,似乎让人很难拒绝。然而游戏是一个特殊工种,游戏的天性就是要短平快赚钱,所以你永远都是在冲爆款,你永远都在做下一个游戏!同时,这种经验没法让你体验到持续的增长和积累,而这种应对高速增长的流量和业务规模,不断改进架构和基础设施的能力在大型互联网项目中又是必备的。
所以, 除非你真的热爱游戏和游戏开发,否则一般不建议去游戏公司。(当然,如果你优先级更高的诉求是去广州,但是又没有其他选择比如微信,那么另当别论)
许多同学有「后台开发工程师」的offer,又有「Data Scientist」这么高大上title的offer。还有些有「前端开发」或「运维」offer的同学话语间却透露出一点对相应领域鄙视的神情,和那些认为「汇编」和「底层」就是更牛逼的人是一样一样的。
「算法」「机器学习」这些听上去更高大上,我也有不少这类offer, 但是我依然选择做「基础架构」这个方向,而不是「算法」,因为我的热情和兴趣都在这上面, 我相信这样可以做得更好。等我做得足够好的时候,我才可能会去做一些新鲜的尝试。
我一直觉得只要保持开放和持续学习的心态,做哪个领域都不会有问题, 塔尖的人永远是稀缺的。实践中,想要招一个优秀的「前端」和「运维」,是非常难得事情,因为真的很缺。所以如果你擅长前端或运维相关的技术,又有足够的兴趣,请不要头脑发热去搞「大数据」和「机器学习」。
哪个技术/编程语言有前途?
还有些同学说我对后台编程有兴趣的,只是我不知道学哪个好,接下来他又会问现在C++还有市场吗?PHP和Python到底哪一个好? 是不是以后的趋势是Go?Java的薪水是不是没有C++高? 就这么一纠结,半年就过去了,再那么一纠结, 转眼就要毕业找工作了他们还是没想明白这个问题。对于这个问题,举个例子说明我的观点:微软的工程师一直是国内外互联网公司抢夺的重要人才资源池,但是实际工作中大多数微软FTE工作都使用C#在windows平台编程,而且很多都是在从事传统的软件开发,那么,为什么会这么抢手?
我身边优秀的工程师们,都是有自己擅长且无法被轻易替代的技术, 同时又保持着对新技术探索的热情。我自己主要编程语言是C++,但是对Python和Go的熟悉程度也可以轻易地开始独立做一个项目,对openstack和docker等等也都有研究过。我也尝试过用PHP和Python写过网页小游戏的后台,我试着用这些开发一些工具来便捷自己的生活。当然,我并不是说我优秀,我只是说我真的喜欢技术,愿意去探索,并有信心未来不轻易地被淘汰。
当然,软件工程师的核心价值应该是实现想法和解决问题,而不是编码员。
一定要去BAT吗
很多人形容大牛都是「BAT X年工作经验」这样的论调,给人一种似乎只要去BAT熬上多少年就可以变成大牛一样。
我的看法一直是「BAT有很多大牛, 但是大牛并不是因为去了BAT而成为的大牛」,这跟好的教育背景是一样的,我们不应该把「锦上添花」当成了「点石成金」。
我不止一次探究过身边高T的大牛或其它公司资深工程师的经历,发现这些人有个共同的特点,就是都是伴随着优秀的项目/团队一起成长起来的。有一个高速增长的业务挑战,不断地出现难题,不断地从坑里面走过来,这样的经验,才是最有价值的!如果你有一个机会去一个业务快速增长并尊重工程师的创业公司,绝对是比去BAT做螺丝钉更好的机会!(比如近年的美团、小米、滴滴打车、宜信大数据中心、今日头条等)
大公司很多部门通常有一个毛病,就是业务过于成熟,所以一切都追求稳定,即便是急需要改进的东西,也没有人敢去碰坑。你极有可能就是在这样的环境中,你是一颗勤劳的螺丝钉,随时可以拔掉或者替换。而你根本不用幻想,基于现有的资源,给你机会去创造并擦出新的火花。
当然,一切归根结底最重要的因素还是看人。
通常,心态开放并积极学习的人,运气都不会太坏。