从选择到承担 WiFi万能钥匙万玉权谈一个程序员的自我修养

摘要

“年总经常问我们,你最近有没有打太极?如果你没时间去打太极,说明你可能忙到没有时间去思考了。很多CTO或技术管理人员都很累,白天要和高层开会、晚上要处理团队里的一些细节工作、还有做各种决策、解决各种问题,在这种时候我常常会想起他的这句话。太极拳这种以慢打快、厚积薄发的理念,是我们企业文化中最重要的一条。”

6月23日-6月24日,2017年GITC全球互联网技术大会在上海举办,WiFi万能钥匙副总裁万玉权受邀参加并发表演讲,分享自己的职业成长经历。在短短四年时间里,WiFi万能钥匙拥有了9亿用户、5.2亿月活跃用户,成为仅次于微信和QQ的超级应用,而这些亮眼的数据正是由一支一百多人的团队完成的。

作为这家技术驱动公司的技术带头者,万玉权从一个资深技术开发人员成长为一个9亿用户的技术、产品负责人,带领团队攻克无数技术难题,成就一个超级应用背后的强大技术体系。

在这个过程中,万玉权认为,四个重要的关键字是:选择、坚持、承担、成长。

“我自己的成长过程是这样的:一开始做什么样的选择,选择了之后这个过程中你如何坚持,你愿不愿意去承担更多的责任。选择决定了你能不能走一条合适的路,选择之后你要坚持去做某件事、你要承担更多的责任,在你承担的时候反过来你又会面临选择,这是一个循环往上的过程。”

2013年初,万玉权迎来第二个孩子,在产房外接到WiFi万能钥匙联合创始人、现任全球轮值总裁张发有的电话。当时,他已经具备六七年的技术研发经验,想要将自己储备的技术施展开,这一项目是盛大创新院院长陈大年亲自挂帅的项目,具有良好的工作氛围、领导具备战略眼光,当晚,万玉权就决定加入WiFi万能钥匙。

回顾这个选择,万玉权认为,在选择工作时,很多人会看中薪水,但他认为更重要的是机会,选择一家有潜力的公司,去享受在这个公司奋斗过程中所经历的一切。

刚到WiFi万能钥匙时,负责服务端开发的只有他一个人,当时的办公地点是一个村委会办公楼,旁边是在建筑,天气热或是有风的时候,灰尘满天飞,机械轰鸣,里面的空调都是坏的。在这种艰难的环境下,万玉权着手把整个WiFi万能钥匙的后端进行了一次完整重构,充分考虑了系统的可维护性和拓展性,这项富有远见的决定使这套系统一直支持到了WiFi万能钥匙的3.0版本。

现在,万玉权负责整个WiFi万能钥匙的技术产品部,包括国内产品线以及还要海外产品。WiFi万能钥匙也从最初七个人,发展到了四百多人,成为一个总用户数达到9亿、月活跃用户数5.2亿的超级APP。

从个人成长到公司发展,万玉权认为,“数据至上、厚积薄发、有爱感恩、担责守信”的企业文化,是成就WiFi万能钥匙的核心原因。

更多精彩内容,请见以下演讲实录,有部分删减:

各位好!我先简单介绍一下WiFi万能钥匙阶段性的成果。截止到2016年6月份,我们总用户达到9亿以上,月活跃用户数是5.2亿,每天连接的次数超过40亿次,我们是以分享经济的理念提供全民免费上网服务的一家公司,WiFi万能钥匙还有一个标签,我们是中国前十大APP中唯一一个非BAT阵营的产品,在猎豹智库的统计结果中,我们的用户数仅次于微信和QQ。

Snip20170705_21.png

关于我们的产品中,大家都会问起“上网安全”问题,我们在安全这一块做了很多工作。比如说,WiFi安全云感知系统、上网加密通道,除此之外,我们还提供千万级的WiFi安全险。

选择

任何一个从业人员来说、在任何时刻都会面临选择,在平时的面试工作过程中,你会感到很多人的选择是不一样的,有些人说我要选一个薪水比较高的,这是大部分人尤其是中级或高级技术人员比较在乎的东西,但我想说的是,选择一家有潜力的公司,这样的机会对于任何一个从业人员来说是非常非常重要的。

Snip20170705_22.png

在2013年2月份,我的第二个孩子出生了,我在医院产房接到了现在的WiFi万能钥匙的轮值总裁给我打的电话,他说,我们想做这样一个产品,你愿不愿意过来。当时我简单了解了一下情况,在当天晚上我就告诉他,我孩子和老婆出院之后我就过来。

我当时的想法是什么?对于一个从业人员来说,经历过程是很重要的,我当时给自己定下一个基调,我加入到这家公司我要享受在这个公司中间所经历的一切,因为之前做了大概6、7年的技术研发,自己储备的这些技能、你所看到的东西,这个时候在你内心,你是想有所抱负的。我就带着这样一个信念加入到WIFI万能钥匙。一直到现在,我所遵循的还是这样,要享受这家公司给我提供的每天我能够享受到的过程,而且从现在来看,每一天对于我来说都是第一次。

坚持

WiFi万能钥匙当时的办公地点是一个孙桥旁边的村委会的办公楼,旁边是在建筑,天气热的时候或者是有风的时候,灰尘满天飞,机械轰鸣,里面的空调都是坏的,风扇空调窗户全部打开,就在这样的环境下我们开始WiFi万能钥匙的研发工作。

和大部分程序员是一样的,到了一个新的环境里面,我唯一选择的就是选择去重构。当时,我们也不知道这个产品可以做多大,在我加入之后这个产品有了明确的方向,这个过程中,也会经历很多大家经常会经历的一些问题,比如系统问题、数据问题。

2013年之后,整个系统重构,情况有所好转,这个系统的构思就是目前大家都非常流行的架构,人员也会逐渐加入进来。我刚进去的时候,整个WiFi万能钥匙公司就7个人,如果按照一个正常公司的规模,可能至少有四五个研发人员配上一些测试和产品人员,但当时对于我们来说,有些项目只有一两个人。

举个案例,我们在做系统的时候只有一个研发人员,而且这个研发人员是专门为了做这个系统招进来的,研发周期有3个月,但是这个系统上线的时候,我们发现Bug层出不穷,最后决定,这个项目重新开始做。在这个过程中,我们就会去反思,为什么会失败?是人员不够?没有组织、计划?所以后来,我自己亲自带了一个3个人的技术团队,重新做系统。

我的做法是先了解一下现有行业里面哪些公司这方面做得比较好,我们学习的对象是微信,微信这么大的用户量,如何做到通讯信息不丢失?经过研究之后开始动手,我们做这个系统大概花了2个月的时间。现在,过亿的APP全量推送,都是在这样的系统上。

我们公司还很强调“太极文化”,就是以慢打快,厚积薄发。我不知道在座各位最常问你们下属的一句话是什么。我们老板经常会问我们说的话是,你最近有没有打太极?如果说你没有时间去打太极拳,说明你这个团队出问题了,你没有时间去思考。每次看到太极拳的时候,我脑子里想到的就是我这段时间是不是特别累。很多CTO或者技术管理人来说都很累,尤其是到了一定层次之后,白天要和高层领导开会,晚上还要处理团队里面的一些细节的工作,做各种各样的决策,解决各种各样的问题。在这个时候我就会经常想到这句话,太极拳这样以慢打快、厚积薄发的理念,是我们企业文化中间最重要的一条。

WiFi万能钥匙花了两年时间只做了一件事情,就是连接。当用户量越来越大的时候,我们发现在“连接”这个过程中用户端的失败率是比较高的,大部分连接时间是在3到5秒钟,有些是10秒有些甚至是超过15秒,大于15秒的失败率非常非常高。这个时候,我们对分布全国各地的百万级的热点和百万级的设备的数据进行统计分析,希望能找出原因。

为此,我们把整个客户端联网的内部实现的状态转化做了拆分,每一个环节都做了打点和统计,最后发现失败率最高的耗时最长的是在扫描和关联这两个阶段,甚至会进入到一个死循环,扫描、关联最后是断开连接。发现这个问题之后,开始分析原因,失败和哪些因素有关系?常规原因是信号弱、连接过多,但我们进一步的研究之后发现,这和用户当前使用设备是有关系的,你的手机驱动不同,连接耗时是不一样的,有些芯片的关联时间可能是在几百毫秒,但是同一家手机型号的另外一款产品用的芯片不同,他的过程的耗时达到了3000多毫秒。

发现了这些问题之后,我们就对后面的这个过程做了一些优化,信号强的肯定是很快就可以连接上的。基于海量数据,我们就采用机器学习算法和热点算法,把最适合用户的热点给到用户,对同样的一批用户,整体的连接时长缩短了3到5秒钟,最终我们的连接成功率由原来的百分之七十左右提高到百分之八十。

Snip20170705_23.png

经过了2013、2014年这两个阶段,在2014年发年终奖时,老板决定把今年全部的利润分给大家。当时公司只有四十几个人,每个人都可以独挡一面去做一件事情。团队贵在精,不在于多,这是我现在对整个团队的要求。

承担

在2014年之前,我是作为一个研发人员进入到WiFi万能钥匙,到了2015年我的角色有所转变,需要把公司所有系统做整体架构改进、落实和运作。

我对“软件开发”赋予了一个新的定义:

“软”,我相信在座的各位都具备,而且在好多方面都有自己独特的一些见解和想法;

“件”,产品,还有一个意思就是模块的意思,如何把这样一个产品做好,对件的要求就是对外要简于形,对内要精于心;

“开”,开心,你只有在公司开开心心的工作,你回家才会有一个幸福的生活,另外我们是不强调加班的,而且不愿意让他们去加班;

“发”,整体的过程你要看到问题的前瞻性、判断性,或者你所从事的这个行业后面的趋势是什么样子的,提升自己的整体实力。 

Snip20170705_24.png

这四个字本身就是一个循环的过程。

再说团队,我就强调两点:信任和授权。说到授权,我分享一下自己的感受。

WiFi万能钥匙整个系统的研发过程,我重新做了一次改变之后,满足了当时业务的发展需求。在这个时候,我想把任务交给下属。当时的感觉是什么,就像这个小朋友刚刚学会走路、不愿意放手。他每做完一个东西,都要拿过来给我核对一下,看会不会有问题,但是管理的人越来越多,每做一个东西我都要去核对。结果是什么?我没有时间去打太极拳了。

我一直思考这个问题,和其他的领导去沟通,我不愿意授权的原因是什么?是我认为我可能做的比较好?其实我觉得还是对下属不够信任。那一整个月我都特别煎熬,之后,我就果断地决定放手让同事去做,结果远远比想象的要好。

这个过程中,任何一个环节对我来说都是第一次,要像海绵一样去学习,每一次都要把自己清空,所接触的东西都是新鲜的,这样的话你成长的过程才会强大,这个过程是很痛苦的,有一句话叫“使我痛苦者必使我强大”,我的体会非常深刻。

要想看到一个人的本质,叫他承担一种责任是最有效的方法,承担的越多、你就会去用心的思考这个过程。

成长

Snip20170705_25.png

我自己的成长过程是这样的:一开始做什么样的选择,选择了之后如何坚持,中间有痛苦有快乐,你愿不愿意去承担更多的事情。

选择决定你能不能走一条合适的路,选择之后你能不能坚持、敢不敢担当、承担更多的责任,决定了你能走多远,在你承担的时候反过来你又会面临选择,这是一个循环往上的过程。

最后,我想祝福每一位程序员都能从技术职业路径中看到更广阔的世界,像一个CEO那样从产品、从公司的全局去思考,果断选择、不断坚持、勇于承担、收获成长。谢谢各位!

最新文章

极客公园

用极客视角,追踪你不可错过的科技圈.

极客之选

新鲜、有趣的硬件产品,第一时间为你呈现。

张鹏科技商业观察

聊科技,谈商业。