我将用系列文章,回顾十年程序生涯,一方面是对职场生涯的阶段性总结,另一方面希望这些经历,对大家往后职场生涯有所启发。
我很庆幸一路走来都是自己的选择,虽然也走了不少弯路,但那是我选择的生活。
一只站在树上的鸟儿,从来不会害怕树枝断裂,因为它相信的不是树枝,而是它自己的翅膀。
— 1 —
大学时光
一般大家回顾都要说说都大学生活,我的大学生涯特别特别无趣,大一大二在网吧中度过,挂科无数、四六级也没过。
我们的大学坐落在山上,放一张当时大学的图片,当然现在的变化已经非常大了:
大学期间一直默默无闻,唯一一次出名,是被辅导员从网吧抓回来,全年级通报批评,一下大家都知道我居然在网吧住了17天。
一晃到了大三,挂科无数,甚至要被学校开除,深刻反思后奋起直追拼命了半年,考上了研究生。
这期间因为考研的目标是华科计算机,除了笔试还需要上机考试,淘汰率爆高。没办法开始疯狂敲代码,谭浩强那本《C语言程序设计》上的每一个案例,基本都实现了一遍。
写着写着,发现不过瘾,正好有几个成绩很好的同学组队要参加ACM。
了解了下,发现这个比赛不错,可以锻炼编程能力。
这时候,很尴尬的事情发生了,我要求加入他们的队伍,被无情鄙视拒绝了。
队长给我指了条路:你先去PKU ACM上面刷几百道题吧。
画外音:你这个编码弱鸡,还是先练练吧!
无奈之下,只好自己玩了,于是开启了我的刷题生涯。
那时候很狂妄,账号名是这样的:
我很快就被现实教育了,PKU ACM的题目真的难!经常是几天才能完成一个。
很多时候搞不定代码,就在那一边拔胡子一边继续敲,1个月之后,我发现胡子全让我拔光了....
但收获是巨大的,大学期间所有专业课基本没学,基础特别差,为了刷题我把最重要的几门课的教科书反复读,反复练习,基础很快赶上来了。
短短几个月我学会了各种算法,诸如贪心、动态规划、背包等等。
等到研究生毕业找工作,才发现,刷题对进大厂是很有帮助的。
给在读计算机专业的朋友们一个建议,一定要多刷题!
毕业的时候要想进BAT这样的大厂,算法一定是必考的。
— 2 —
实习
大四弄完毕设之后,除了刷题没有其他事情干了。
于是我开始找实习的地方,想着去公司积累点经验。
我所在的那个城市,IT公司非常少。
找了挺久,找到一个小公司,工资是一个月1500。
那会还算不少钱,很多同学找的工作一个月也就3000出头。
有了实习机会,很开心,公司给网吧做小软件,大概10来个人挤在一个民房里。
老板交给我的任务是写Windows C++界面,正好大三学了VC,工作很快就上手了。
没几天,老板说软件要赶着上线,全员一周工作六天。
今天大家热议的万恶996,洋哥10多年前就体验了。
想着多学点东西,每天干到12点,学校也不回了,直接打地铺住公司。
很快就工作一个月了,该发工资了。
那天我非常开心:人生第一次要领工资了嘛。
没想到老板说,银行那边出了点问题,所有人的工资下个月一起发。
看着其他正式员工也没什么反应,我也没说什么。
第二个月依旧是996,这期间给网吧做的软件上线了。
这个过程了解到了软件开发-测试-上线的全流程。
老板还跟我说:小伙子,你挺幸运啊,没毕业做的东西就有人用了,继续好好干,一起改变世界!
听了这话,我也挺激动,开始给社会创造价值了。
突然有一天,去上班发现大家都在收拾电脑和桌椅。
我赶忙问:什么情况,大家要去哪?一个员工告诉我:老板欠钱跑路了。
卧槽,一下懵逼了,老板不是几天前还说要改变世界吗?怎么突然就跑路了。
那我这两个月的工钱不是没了?
遍体鳞伤之后,我回到了学校。
因为这段经历实在太惨了,也没敢跟同学们说。
也算提前体验了社会的残酷吧。
— 3 —
找工作
读研正好赶上学制改革,三年缩水成两年。
研一除了学专业课就是帮老师做项目,时间很短暂,一晃来到研二开始找工作。
面试过的公司:网易游戏、腾讯游戏、盛大、畅游、北电、诺基亚、Autodesk、微软、百度、国开行。
那个年代,外企非常受欢迎,面试北电的时候,在光谷的一家五星级酒店。
北电的面试官的水平也非常高,面试过程一直在探讨C++反射的底层实现。
诺基亚的面试地点更绝,包了武汉的一个高档别墅区,极尽风头。
没曾想,没几年时间这两家公司都已日落西山,外企在中国的辉煌时代也一去不复返。
最后我拿了三个OFFER:腾讯游戏、AutoDesk、国开行。
薪资上来说,AutoDesk和国开行都比腾讯高,且一个能解决北京户口,一个能解决上海户口。
但读书期间,我一直在思考互联网的发展前景,也有一个未来在互联网干出一番天地的梦想。
最终我选择了当时看起来最差的腾讯。
— 4 —
第一份工作
2008年南下深圳,看着南山繁华的夜景,我给自己立下了誓言,一定要在10年内混出一番人模鬼样。
然并卵,梦想并没有实现,今天还在前行中
刚加入腾讯,年薪10万,看着深圳的房价,做了下计算,这得工作50年才能买一套房啊。
腾讯的领导王先生给我们说:刚工作的前几年不要在乎收入,扎扎实实的成长,有一天你会发现突然就质变了。
当时半信半疑,今天回过头再来看,的确是非常有道理的。
我们小组负责研发QQGAME游戏大厅,本以为是研发游戏,工作才发现是在做Windows客户端。
心里不免有点小失落,但这点失落很快就被繁忙的工作冲散了。
入职两周开始接线上需求,我们的客户端代码是基于MFC和COM的思想构建的自有架构。
整个代码库有几十万行,上百个dll模块,编译一次就需要10来分钟。
那段时间,压力山大,担心不能按期交付,只好每天12点下班、每个周六都去加班。
王先生对人要求非常严格,刚工作遇见严格要求的老板,其实是一种幸运。
每天我们都会有代码Review,王先生对代码风格、类的结构、工程结构甚至是注释的规范性都有极高要求。
这也让我产生了「代码洁癖」,对之后的工作帮助巨大。
在腾讯工作期间,虽然非常累,但能力成长飞快,QQ游戏大厅的用户量是千万级的,每天的用户反馈无数。
程序员的能力成长,需要来自真实用户的反馈和检验。一做出来功能就有几百万人会用,自然能快速成长。
最后的话
程序员是一个很苦很累的职业,但也充满了成就感。
每一段闷头编码挑战极限的时光,都值得回味。
这是我的10年程序员生涯系列的第一篇,这个序列要写好几篇。
我特别喜欢一句话在这里分享给大家:
我的代码曾运行在几千万用户的机器上,作为一个程序员,还有什么比这更让人满足的呢?如果有,那就是让这个用户数量再扩大 10 倍。
欢迎大家在此文下留言,讲述自己的经历,以共勉!
其他原创文章可以戳:
博主洋哥:创过业,做过大厂总监,做过小厂CTO,一个追求终生成长的
此公号主要分享职场&认知&成长。你可以长按这个二维码关注findyi公众号,回复“1”,获取职场发展PPT一份: