昨天和一个从小公司跳槽到BAT级别大厂的读者聊天,他抱怨之前对大厂的技术充满了憧憬,但入职后发现这边的技术栈还不如之前的公司,领导水平也很有限,他感觉到非常疑惑。
其实这真的很正常,解答完读者的疑惑之后,也想跟大家分享下,这个话题去年也分享过,但这次我的思考更加深入了:
1.大公司对「做事」的定义开始改变
公司越小且越处在初创阶段,团队越倾向于追求把事情做成的成就感,对「做事」的定义也就相对简单和透明。
这个时候,做到Cotext Not Control相对容易。
一旦公司变大,部门变多,部门墙就开始产生。大家对「做事」的定义就开始产生分歧,不同的部门的目标自然不一样,这个时候「屁股决定脑袋」的事情就会越来越多。
这种情况下,Control就是最重要的事情,要做一个项目首先要抢地盘、抢名头,否则你做完了,功劳不算给你怎么办?被人摘果子了怎么办?
于是很多PPT架构师、PPT管理者应运而生,他们通过各种精美绝伦的文档和宏大无比的规划打动了老板们的心,领到了圣旨抢到了地盘。
至于用技术推进产品业务进步?作出技术创新?取得真正的成就?满足用户的新需求?Who Care?反正能晋升能涨薪能混日子就行。
2.大公司的利益争夺导致政治斗争
公司越小且越处在初创阶段,团队成员更倾向于获得长期利益而非短期利益。从利益的设计和划分都相对容易和清晰(股权的各种坑除外,这个旧文写过)。
一旦公司变大,短期利益变得触手可及,无论是大厂的Title还是薪资股票都是那么诱人。员工多了更是让统一价值观变得越来越难。
为了证明自身价值获得短期利益的行为纷纷产生,比如各种偏离主航道的事儿,再比如没事都要找事做。
另外既然是获取短期利益,从精神和肉体层面快速消灭竞争对手当然是最快捷的方式,玩政治手段自然就是首选了。
但凡管理不善的大厂都充斥着各式各样的政治斗争,这种内耗自然会降低组织对技术进化的渴望。
3.大公司业务极其复杂
毕业第一年在腾讯工作,做QQ游戏大厅,当时用的IDE是VC2006,用的版本控制工具,叫 ClearCase(估计用过的人不多),IBM 开发的。
特点是极其严谨、非常强大,但流程极为繁琐,用起来简直让人抓狂,这还是腾讯花了3000万找IBM买的。
而QQGAME这个产品的代码量几十万行,DLL就有几十个,工程编译一次需要20分钟以上。
离开腾讯多年后,问了问前同事,他们居然还在使用VS2006和CleaerCase,原因很简单,更换新版IDE需要解决大量技术问题,而业务又在高速迭代,只好不了了之,更换版本控制工具?历史的各种Log就会丢掉,要是出现什么稀奇古怪的突发问题,还得去看CLeaerCase。
业务的复杂性还会导致耦合严重,一但代码工程产生耦合,改动一个地方就会牵一发而动全身,这种情况下引入任何新技术都会带来极大工作量。
大公司的业务代码,有时候明明感觉有bug,却能运行良好。
这是一个前人留下的屎堆起来的一个克苏鲁缝合怪,看起来摇摇欲坠,有无数的虫子爬来爬去。但勉强堆起了山一样的形体,蠕动着为老板赚钱。
4.大公司技术历史包袱重
大公司之所以能成为大公司,一定是找到了稳定持续盈利的业务模式,这些业务对应的产品,动辄横跨几年甚至10年,这些年业界的技术高速发展,但大公司要保证业务的稳定性,即便再落后的技术,只要能给老板赚钱,就是极好的。
你想尝试引入新技术?能带来多少用户价值、商业价值?导致系统崩溃了怎么办?小公司系统出点问题无非是影响几万用户,大公司的产品要来点小问题,就算1/100的几率,拿QQGAME上亿用户来说,那就是100万用户出问题,一下就给公司带来几千万的损失,这么大的锅,谁敢背?
所以大公司的技术leader在引入新技术这方面,一定是趋向于保守的,人都是趋利避害的,用了新技术成功了,并没有肉眼可见的好处,失败了?直接卷铺盖滚蛋吧。
那么大公司该如何保持技术不断进化呢?这里也说下我的一些思考:
1.引入能破局的管理者,并给予最大支持
举一个栗子:乔布斯回归苹果。在乔布斯离开的那几年里,苹果已经堕落成一个因循守旧的官僚企业,并逐渐走向死亡。
乔布斯回归后,仅仅半年就重塑了苹果的文化和管理,并开启了苹果再创辉煌的序幕。
能破局的管理者往往能够不断思考商业和业务的本质并找到重要抓手和关键流程,更能切进去改变系统运行方式,进而推进业务、产品、技术的发展。
2.做新业务时启用独立的团队
还是拿微信团队举例,如果不是Pony ma坚持让广州团队和QQ团队一起做移动通信,恐怕今天的腾讯已经走向平庸。
微信团队今天取得的成绩不光是用户量,同时也有多端通讯实时同步的领先技术,这项技术在2012年属于绝对领先且碾压的技术。微信团队的前身是foxmail,张小龙创造性的把邮箱的实时同步引入到即时通讯领域。
哪怕到了今天,微信团队从几十人成长到上万人,微信的技术依然保持着高速进化的状态。
独立的团队可以一定程度脱离大公司的短期利益和政治斗争的影响,专注于目标的实现,进而提升效率创造真正的用户价值。
这也是很多大公司开启投资模式的最主要原因,既然自身无法高效不如用资本撬动很多高效的团队为自己赚钱。
3.管理尽量扁平和透明
大公司的层级无法避免,这也是保证稳定性的基础。毕竟员工多了就要给他们赋予一些晋升和向上的通道,而层级就是最好的赋能。
但是,在层级之外依然可以保持扁平化的管理,比如阿里:管一级看两级,除了管理直属下属,管理者还要往下看一级,这种方式可以有效防止官僚行为的固化。
再比如头条倡导的OKR和全员信息文档化,同时做到了扁平化的管理和企业信息的透明。
4.不断调整组织架构
这也是为什么我们经常会听到诸如腾讯调整管理架构、阿里调整各个事业部的消息。
对组织架构作出正确的调整,会重新释放生产力、提升员工工作效率,当然这种调整本身也有一定风险,如果无法和业务发展匹配容易起到反作用,反而导致更大的混乱和内斗。
乔布斯回答不少大公司为什么失败的一段话挺经典:
“公司规模扩大之后,就会因循守旧,他们觉得只要遵守流程就能奇迹般地继续成功,于是开始推行严格的流程制度,很快员工就把遵守流程和纪律当成工作本身。”
说下我对大厂的总体看法:并不是大厂员工能力问题导致某些技术落后,完全是业务发展、组织臃肿以及商业市场的选择导致。
聊完大厂的技术,再聊聊打工人关于大厂小厂的选择:
我认为职场初期(前五年)进大厂是非常必要的,不管是不是最先进的技术,最起码完善的技术培训体系、薪资福利、更人性化的管理、人才密度等等,完全碾压小厂。
但是对于工作超过五年的朋友来说,大厂绝不是职场的终点,在成长到一定的阶段更好的选择或许是创业或者跳槽到中小厂成为合伙人级别或者拿到公司股份。
工资收入很难让我们财务自由,它是线性增长的,很难有积累后的突变效应,随着工资上涨我们的欲望和开销也会同步上涨。但期权收入却不一样,有时候选择对一家公司,很可能就赚到了第一桶金。
旧文也说过,从毕业第二年开始我选择公司的基础条件就是必须给股份,否则工资再高都不考虑,这也成了我打工的底层逻辑之一。
以上就是今天要分享的全部了,我们下期见呀~