最近我将用系列文章,回顾十年程序生涯,一方面是对职场生涯的阶段性总结,另一方面希望这些经历,对大家往后职场生涯有所启发。
这是十年程序生涯系列的第二篇,第一篇在这:面试腾讯,过了~ (opens new window)。
写公号以来不少读者都会问两个问题:洋哥你为什么工作一年就离开腾讯了、洋哥如果你留在腾讯会不会发展更好。这篇将详细解答下这两个问题:
在腾讯,我们团队做的是QQGAME的游戏大厅,就是这货:
那时候的技术栈是Windows C++,技术框架是基于COM思想和MFC搭建的,不得不说MFC真的是个很奇葩的框架,修改一点东西就会引发各种问题。
彼时腾讯的公司级技术栈和技术工具并不算先进,甚至可以说是有点落后,当时用的IDE是VC2006,用的版本控制工具,叫 ClearCase(估计用过的人不多),IBM 开发的。
特点是极其严谨、非常强大,但流程极为繁琐,用起来简直让人抓狂,这还是腾讯花了3000万找IBM买的。
2013年和腾讯老同事聊了聊,他们居然还在使用VC2006和CleaerCase,原因很简单,更换新版IDE需要解决大量技术问题,而业务又在高速迭代,只好不了了之,更换版本控制工具?历史的各种Log就会丢掉,要是出现什么稀奇古怪的突发问题,还得去看CleaerCase。
而QQGAME这个产品的代码量几十万行,DLL就有几十个,工程编译一次需要20分钟以上。
当然,技术栈和技术工具的落后并不妨碍组内的技术建设,相对而言QQGAME的技术实力在公司是前列的,这是因为我们有一个极为负责任的领导:王先生。
王先生非常重视代码设计和CodeReview,这两点也让我受益匪浅,我们在编写稍大一点的模块都会被要求用UML画出代码时序图和类结构图:
这种思维的训练非常重要,其实这也是对于高级工程师的基本要求,类架构图让我们理解设计的功能和对应的关系,代码时序图让我们掌握程序运行的状态,方便后期解决bug和发现潜在的bug。
腾讯的CodeReview特别严格,对代码规范的要求是变态级别,工作一个月就能让人形成代码洁癖和强迫症,除了组内的CodeReview,还会有公司级别的抽查,一旦出问题就会影响绩效。
在腾讯的工作每天都是9-11,周六也会跑去加班。当然并不是强制,只是因为任务和工期实在太紧张,但能肉眼看到自己的进步,这点辛苦并算不了什么。
这期间为了精进技术,还自学了大量C++进阶书籍:
- 《The C++ standard library(C++标准程序库)》
- 《Effective STL》
- 《Generic programming and the STL(泛型编程与STL)》
- 《Exceptional C++ style》
- 《C++ template》
- 《Modern C++ design(现代C++设计)》
- 《Thinking in C++(C++编程思想)》
以上这7本书在工作第一年里被我反复学习,11点到家看到1点,周日再看半天。这些书在几年后学习Chromium开源代码之际发挥了巨大作用,也让我在工作中越来越得心应手。
彼时腾讯虽然还不算巨头公司,但福利和培训机制已经非常完善,比如每年一次的旅游、再比如定期的技术分享和培训。
还有一点特别赞,腾讯的产品氛围特别浓厚,老板经常会把所有技术同学和产品同学拉在一起开产品脑爆会。
各种产品大佬的分享对所有人开放,还记得听过张小龙分享的《7星级邮箱》,那个时候张小龙远没有今天的知名度,但他的方法论征服了所有听他分享的人,也让我第一次领略到产品经理的威力。
在腾讯整个工作期间是非常开心的,小组里有好几个关系非常不错的同事:小A是应届本科加入腾讯的、J哥是工作一年的老人、F哥是从华为跳槽过来的,工作四年。
我们经常会在一起吃饭闲聊,有一次J哥突然说:你们知不知道,王先生买了套市中心的房子,总价130万!
那个时候,130万对于月薪7000的我而言简直是天文数字,王先生虽然是我们的领导,其实也就工作三年。于是好奇的问:为什么工作三年就有这么多钱啊?
J哥:废话,王先生分了不少腾讯的股票,就套了1/4不到就买房了。
这是我第一次了解到股票的威力,下班后和大学时期的师弟小强聊天,聊到这件事,小强说:我们公司也分股票啊,并且刚融资四亿美金,马上就要上市了。
这一下,仿佛给我打开了一个新世界的大门,立即约了J哥吃饭,询问J哥有没有拿到期权。
J哥:现在来的人很难拿到期权了,越来越难了,期权就是老员工才有机会的,听说腾讯上市前加入公司的都已经千万身家了。
千万身家!第一次听到这个词,一瞬间仿佛被电击一样,随后我给自己定了个目标:要在4年内实现千万身家,要改变人生命运而不是慢慢升职加薪。
评估了下,留在腾讯这个目标是没有实现的可能性的,于是萌生了跳槽到小一点还没上市的公司的想法。
我这个人大优点没有但执行力特别强,从想法到拿到好几家Offer只花了2周时间。当时有几个选择:北京的人人网、迅雷、联众游戏大厅、51.COM。
彼时这四家都属于风头正劲的独角兽公司,都有机会上市,也都给我承诺了期权。
深度思考了下,我必须北上!因为中国互联网超过半壁江山都在北京,即便不能在人人网实现千万身家,还有无限多的机会。就这样,我提离职了,一个月后我加入了人人网,开启了北漂生涯。
简单说下留在腾讯会不会更好的问题,王先生在随后的10年里,先后晋升技术总监、高级技术总监、助理总经理(GM),但其他认识的同事大多还在编码、有两个晋升为组长、一个晋升为技术总监。
讲真,要想职场高速发展还得加入业务高速发展的小公司,因为这样的公司对人才的渴求度最高,能火线迅速提拔。在一个成熟的体系内,晋升其实是一件非常困难的事情。
离开腾讯事实上加速了我的职场发展想。
好了,两个问题基本都回答了。
今天就写这么多了,这个序列估计会写5,6篇,我们下期见~