由CORNERSTONE主办的“深圳敏捷狂欢大会”圆满落幕。此次活动集齐了敏捷领域的大咖与近百位敏捷研发爱好者到场,会上大家通过提问互动与敏捷大咖产生了精彩的思想碰撞,大家就敏捷开发如何落地及技术人员如何转型晋升这两个话题做了深度探讨.
以下为敏捷专家薛军和李林在敏捷狂欢大会上的演讲分享
为什么腾讯产品最好
2017 年 5 月份,网上有一份关于移动 APP 月活跃度的排名数据,在这份排行榜中,前十四名里,腾讯的产品就占了七款。 这个耀眼的数据足以说明,腾讯的产品是有多受欢迎。
腾讯的产品为什么会那么好呢?其实这和腾讯的创始人马化腾以及其企业文化有关。马化腾是一个天文学爱好者,爱好天文学的人最喜欢做的一件事就是远距离思考规律,所以马化腾的这种爱好延伸到产品上就是,为了做好一款产品,他们会花时间去观察和研究用户的行为习惯,然后找出这些行为背后的规律,再根据规律去优化自己的产品,只为更好地满足用户需求。所以一个产品之所以能成功,离不开它的企业文化,而企业文化的核心是它的创始人。就像当年为什么李彦宏能做好搜索引擎,因为他本身的技术就很牛逼。
腾讯产品创新之道
腾讯的产品创新之道由三部分组成, 即产品、研发和运营,这是一个闭环的过程。第一步,先由产品远距离观察用户寻找规律。但这规律并不一定是真理,也不一定是能够成立,所以需要研发用敏捷开发快速对规律进行迭代验证,把这些规律变成一个产品、一个迭代或者一个模块,快速试错。运营要在后方发力,及时收集用户反馈,帮助产品优化,这个过程是持续循环的。腾讯的优势就在于这个循环的效率足够快,一个 APP 理论上来说都是两周一个版本,而像 H5,小程序,WAP 这种网页类的一般都是一周一个版本或者两周一个版本,如果按照这个循环规律去执行,那么一个产品如果是双周一个版本,那么在一年内大概就会有 22 个版本,如果是一周一个版本,那么一年的话大概就会有 44 个版本,也就是腾讯的产品在一年之内最少都有 22 次试错调整的机会,这种机会越多,产品就能优化得越好。
产品如何做减法
腾讯更加注重 Evolution (进化),而不是 Revolution (革命),它所追求的不是那些特别先进或者复杂的技术,它所追求的是是否能做出超出用户期望的产品,给用户不一样的体验。而优化用户体验最直接的方式就是为产品做减法,通过大数据挖掘出用户的高频行为,然后在用户高频行为上加大投入,这就是腾讯为产品做减法的实现形式。
研发如何追求本质
在研发上,腾讯无止境追求的是功能的本质性,以微信语音聊天功能为例,用户在公共场合接听语音担心会被听到,于是微信开发出了听筒模式,但是这个功能是由用户自主设置的,很多用户都不会特地去设置它,也就是说这个功能在那时候的开发程度并没有很好地解决用户“倾听”的问题,后来微信团队花了一年多的时间去寻求解决方案,终于通过算法实现了微信语音自动切换模式的功能,这个功能的实现结合了人体工学结构,是通过检测手机在三位空间中有没有一个近似 90°的弧线,加上距离感应器在四厘米以内触发,两个条件加在一起,大大降低误触的可能。所谓研发的本质,一是好用,二是自然。
运营如何借力
好的产品是没有用户教育成本的,所以我们在设计产品的时候,应该考虑产品的外显性,外显性体现在用户在使用一个产品时传递出来的信息,能自带传播功能。像微信的打飞机游戏、语音聊天、摇一摇等功能就属于外显性功能,它们集趣味性与互动一体,使微信自带运营效果。
提问互动环节
Q:微信在迭代过程中是如何挖掘出用户的需求和痛点的?
A:有两种方式,第一种方式就是前面我们提到的,通过数据统计的方式挖掘出用户的高频行为,然后在用户高频行为路径上加深研究,以此来满足用户需求。第二种方式就是把自己想象成用户,而且必须是各种不同的用户,比如你把自己想象成一个老年人,那么你可能会觉得字体太小你看不清,那这时候你就会知道需要加上一个功能来调节字体的大小。
Q:刚刚一直听老师您在强调要在用户高频行为路径上做投入,那么是不是可以理解为做产品现在更看重的是做数据分析,而不再需要创造力了呢?
A:我们前面讲的都是一些方法论,是我把微信团队这些年来所做的事情掰碎了讲给你们听,所以你们才会觉得做这些事好像也不难,但如果我让你把这些方法论拿回去实践,你能保证你的团队就一定能做出来吗?
微信团队用了三年的时间,去进行磨合,才把整个敏捷思维在团队中传播开来,只有大家都理解并认同这种文化,才能迸发出更好的创造力。就像刚刚我们提到的,微信如何识别用户的耳朵,然后自动切换语音模式这个需求,听起来就很胡扯,但微信做到了,微信的开发人员接受了,换到别的团队,人家只会觉得你是瞎闹。
Q:老师,我想问下产品经理如何才能更好地和团队进行沟通呢?就像你刚刚提到的微信语音的例子,开发如果不能接受,我要如何才能说服他?另外我是做硬件工程的,我知道软件用敏捷开发会有很好的说服力,但是硬件产品用敏捷似乎成本会很高?
A:关于团队沟通,可以用敏捷的方法论去实现,如果你们团队目前还没有达成统一的意识,那么我建议你们建立一个“特性负责制”。什么叫特性负责制呢?就是由产品、开发、测试组成的一个小团队,这个小团队专门为某一个特性负责,以后有关于这个特性的用户反馈,改进意见等都可以直接与责任人沟通,时间长了,反馈次数多了,这个功能迟早是会被优化的,因为总有一个理由会说服到他们。
至于硬件这块,我认为是你对敏捷有误解,以特斯拉为例,他们就用了敏捷开发。他们是怎么实现的呢,就是用超配去实现,因为他们知道硬件是改变不了的,但是软件的配置可以进行更改升级,建议你们参考一下特斯拉的模式。
IT 行业进入了一个前所未有的繁盛时代?
随着 5G 时代的到来,计算机几乎已经成为了当今大学最热门的专业,无数非相关行业的从业者转行成为开发者,IT 行业似乎已经进入了一个前所未有的繁盛时代,华为花 200 万年薪招收应届博士生正印证了这点。
大量开发者陷入对未来的焦虑
行业需求日益饱和,很多 IT 企业开始清退 35 岁以上员工,这使得程序员面临的压力骤增,对未来感到焦虑迷茫。这样的情况让 IT 行业成了时代的围城:城里的人想出去,城外的人想进来。
程序员是个吃青春饭的职业吗?
我想是也不是。说是的原因是对于大多数程序员来说,他们从入行第一天到 30 多岁,几乎一直从事着初级程序员的工作,年纪越大,经验没有得到积累,精力却一直在衰退,自然竞争不过年轻的程序员。而说不是的原因,是其实市场上真正有经验的技术管理者如此之少,以至于我接触到的大量公司都受困于在市场上根本招不到合格的技术管理者。甚至有些中小企业还去外包 CTO,这是多么魔幻的一件事,但它偏偏就发生了。
如何能从一个开发者转型成为一个技术管理者?
和大多数人预想的不一致的是,我认为通向管理者的重要门槛是学会合理的评估开发周期。另外还有一个很重要的点是要避免陷入技术的具体细节,培养大局观,学会从产品的角度思考问题。在我看来一位合格的开发者必须拥有主观能动能性,不能简单地做个机械命令的执行者,要明白能力越大,责任越大,要用于担当。
为什么评估项目开发周期这件事如此困难?
很多初中级的开发者不能真正理解一个需求的含义。缺乏经验的开发者很难第一时间发现一个需求所隐含的分支需求、边界条件、技术难点以及可能发生的阻碍。
很多初级的开发者不明白完成是什么意思。事实上我花了很久才接受了这个令人沮丧的现实:大量开发者对完成的定义是写完代码。在很多情况下,很多开发者在开发计划的最后一天交付给测试人员的,仅仅是一个勉强能运行的版本。这导致了大量功能修复 BUG 的时间几乎超过了当初开发这个功能的时间。
永远不会有全部的时间能用来开发。预估 5 天的任务,需要 5 天时间来开发,而实际上很少有组织中的程序员在 5 个工作日中能拥有完整的 5 天开发时间。程序员除了写代码,还需要参加各种和开发相关的会议,可能是设计会议、QA 会议、需求讲解和澄清会议,还有一些关于之前版本或产品的维护工作。根据经验来说,开发者用于写代码的时间一般不会超过 60%。
从管理者到优秀的管理者
太多人认为管理意味着统治,领导意味着权力。而我认为领导意味着知识,应该向他人展示自己的方式是正确的和最佳的,以做到说服或引导他人。领导还意味着服务,管理者应该扮演着仆人和清道夫的角色,集中精力帮助研发人员清除前进道路上的障碍。
面对海量的需求你需要利用你的经验来说服和引导产品经理 /客户,让他们放弃高投入 /低价值的需求,从高投入 /高价值和低投入 /低价值的需求中选取部分实现,保证低投入 /高价值的需求可以顺利的完成。要为了你的团队勇敢说不。
我认为身为管理者必须要学会的重要的一课,是保护自己的团队成员,免受组织中每日泛滥不绝的各种问题、争议和“杂事”的干扰,不做传话筒、 不粘锅式的领导。
提问互动环节
Q:现在团队成员年轻化,仆人式管理确实很关键,但仆人式管理意味着我要下沉到细节里,这会增加我的工作量,我的领导认为我应该关注大方向上的问题,但确实又有很多细节需要我去处理和引导,所以这让我很疑惑我到底该怎么做?
A:我刚刚说的仆人式管理,并不是真正去做一个仆人。运用仆人式管理确实是需要下沉到团队当中,但这并不意味着任何事情都需要你去操心,你应该把目标聚焦在大方向上,筛选出什么是适合你来做的,或者由你出面能更好解决问题的场景,再介入。
例如上个星期,我们在平安的项目遇到了一些问题需要和平安高层去沟通,那这时候就应该由我去出面解决,因为相对于驻扎在那边的同事,我的身份会更好一些,说话也更有分量。但如果这个场景换成是某位同事他不会敲某行代码,那这个就不属于我该管的范畴。
我认为在管理上,要有预见性。提前预估可能发生的障碍可以帮我们更好地把握方向,这样就不至于陷入自我矛盾中。
Q:请问下华为有测试开发工程师这个岗位吗?华为内部是否也在运用敏捷开发的模式管理团队?我想从测试人员转型成测试开发工程师难度大吗?
A:华为是有测试工程师的,在十年前,华为对开发和测试的招聘要求是一样的。当时我们的工作流程是这样的:每个迭代开始前几天,开发会和测试一起去过需求一起写测试用例。华为的测试也要写脚本,写程序的,他们的工作和开发的工作差不多。
我认为这两个岗位之间有很多的共通点,如果你想要做好转型我认为你需要先培养一种快速理解产品的能力,你要了解产品的功能和边界,这是开发和测试都要关注点。编程能力是你现在所欠缺的,以后往这方面努力就可以了。
主办方CORNERSTONE,为新一代智能项目管理平台,可助力企业全方位解决企业协作与研发痛点,科学量化团队表现。不仅如此,CORNERSTONE每月举办多次线下沙龙分享,旨在通过大咖干货分享,构建纯业内、纯项目专家交流圈,共同推进企业智能化管理。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.