程序员:如何做0-1的突破
今天来跟大家分享一下,我们怎么样才能做一件有突破的事情。相信很多同学都熟悉,在工作里面不管作为一个新人还是开发骨干,甚至是技术的主管,都会面临一个问题,就是我们怎么样能够做出一个有突破的事情?
这个问题我相信会困扰很多开发,甚至很多人在职业规划里面会陷入很多焦虑的地方。每次在述职的时候,都会被挑战做的事情太小太散,没有很大的突破,但是什么是很大的突破,很多时候主管自己都说不清楚。
那今天,从我的角度再聊聊怎么样在自己的职业生涯里面寻找0~1的突破的机会。
首先还是科学的预设一个前提,我们先给出一个定义,什么叫做0~1的突破,我们可以从几个范围来界定。
0-1突破定义
标准一:体系化
第一个符合“突破”两个字的产品或能力必须是体系化的、系统化的和模块化的。为什么要求有体系化?因为我们现在整个社会里面基本上很多功能都被完善了,所以我们如果只是解决了某一些单点的问题的话,它已经算不上是一种非常大的创新和突破了,不管是解决了什么样的问题,前提都必须要有体系化,要有模块化或者产品化来支撑。仅单凭一个简单的功能点,已经几乎不是通过功能点就可以成为让用户竖大拇指的时代了。
这个体系化的背后要求我们需要投入了足够多的需求调研、方案产出、技术落地。从我的经验上来看,所以一般来说,如果只是投入了一两周的单人力,一般不大可能能够解决一个非常大或者深的问题。因此在业务结果达到预期的时候,我们会在考核这个项目的投入的时候,在衡量一个产品或者系统是否是体系化的时候,一般会看下时间投入,比如是不是投入了一个月的时间,两个月的时间,甚至是半年,一年。
如此大的项目就务必要求我们在前期的客户调研、方案的设计、保证过程管理以及验证结果都是需要一定的时间的。
标准二:客户数量和质量
第二个是产品或者能力解决客户的数量和质量有一定的要求。不能说我解决了某一个客户的Bug,就是一个0~1的突破,肯定不是的,也不是说我答疑了客户1万个问题,我就做到了一个0~1的突破。对于我们在C类产品里面可能上线了一个新产品服务了一千万的用户,那么就可以定义成一个高质量的产品能力,比如蚂蚁花呗借呗的上线就是极大的一个创新型的产品,当年做成花呗和借呗的技术同学晋升加速、涨薪加速是很明显的。除了直接用户数量的指标外,还有其他可以参考的指标,比如商业化产品的GMV收入、高质量大客户的收入等等,比如在企业服务里面,如果解决了几个重点标杆客户的大问题,那么也可以认为做出客户是高质量的,也可以能说自己做了0-1的突破。
我继续来分享一下怎么样去寻找到0~1的突破的事情,特别是对于一名工程师来说。
结合环境
首先一定要结合环境来分析我们的工作,我们所有人在社会中工作一定是为了解决社会问题的,只有当社会问题非常复杂非常多的时候,才有我们的施展空间。反而如果当经济下行,需求萎靡,就很难能够做到非常大的突破。这是一个客观存在的事实,这个也是很多人为什么说时势造英雄,而不是英雄造时势。小时候经常会愿意相信神话,相信英雄,总认为英雄可以改变很多,梦想自己也能成为英雄,去辅佐君王,扶大厦之将倾。而现在,则越来越意识到人的能力有限,很多东西是集体和趋势所决定,个人的主观能动性在大势面前,微乎其微。
所以这里面我们会有一个大前提,就是要找到一片相对的蓝海,存在一定的问题,存在一定量的市场空间,我们才有可能做出0~1的突破的事情。否则就等于大海捞针,徒劳费力。
比如大概在十年前电商刚刚兴起的时候,去做电商行业就很有可能碰到非常多的挑战,比如说订单支付,导购优惠等等,这些问题都需要从技术上面去解决,也因而导致了大量0-1的突破,比如支付宝的十万级QPS支付的场景。
比如今年在直播行业开始火爆的时候,也衍生出来了大量的视频流畅度问题,直播架构问题,直播平台的稳定性问题,也存在大量的空间能够让我们去做0~1的突破的事情。
但是相反,如果这个行业本身就日暮西山的情况下,我们就很难能找到机会点,比如说在前几年的煤矿产业或者通信产业,它基础设施市场规模都已经非常的稳定,用户总量甚至开始下行了,往往就不会产生过多的需求,所以就算你空有一身通信或者煤矿的本事,也很难找到突破的点,更别说做到很多创新的突破了。
日本在70年代,做出了很多的突破,特别是半导体和企业产业,当时是市场空间足够大,日本人精雕细琢的功夫直接把汽车和半导体产业做到了世界前列,但是当市场饱和后,日本后面失落的三十年几乎没有什么世界级别的创新,甚至在新能源和互联网被一衣带水的中国超越。
所以想要做0~1突破的地方,第一个关键就是要找到足够大的市场,如果市场不够大,几乎不可能产生非常大的变革。
寻找机会
其次是要抓住合适的机会。大家都知道中国的人口是非常多的,按照某个极小的比例是优秀人才,那优秀人才的数目也不少,但凡有一件好事未必轮得上你,所以我们在寻找一个机会的时候,不管是核心开发还是主管,我们都应该在团队结构上找到一个非常好的切入点,也就是入局要有机会点,寻找到合适的空缺职位。
也就是我们要向组织表示出来,这个事情我能做好,而也只有我能做好。这个很多时候就非常考验一个公司的组织结构和团队结构。比如在我的团队里面,往往在一到两年内只有一到两个非常大的项目,那这个时候我把项目给谁是最合适的呢?那一定是在能力方面,在资历方面都能够承担得起这份职责的同学。所以我们在找到这个机会点的时候,势必就要考核这个团队有没有我合适的位置,如果没有我合适的位置的情况下的话,就算我进去了,我也未必能够抓住这个机会。而且很多时候我们所做的事情并不是特别的难,所以完全形成不了个人的竞争力了,很多时候主管或者说整个公司的分配就会决定了这一个机会到底会给到谁来做。
如果有了合适的机会,想要做到这个事情,其实就相对来说比较简单了。你只要抓住这个机会,然后做好过程管理,做好结果管理,基本上八九不离十了。
创造机会
第三个是主动创造机会。俗话说机会是不等人的,有些时候你没有做好准备的情况下的话,你完全接不住这个机会点。或者说有些时候机会还没来临的时候,你根本意识不到他是一个机会,所以这个对于想做一些突破的事情的同学来说,就一定要关注如何去找到机会,甚至是创造机会。
对于“创造机会”我深有体感,它是一个综合性的东西,一方面你要特别关注客户的需求,关注市场的需求,很多程序员只是低着头写代码,不闻窗外事,也不愿意去接受组织和市场的变化,可能觉得自己也改变不了什么,也影响不了什么,这个就是在主动性上面已经输了。
而实际上我们这个社会是能够接受创新和变革的,特别是对于互联网来说,如果一个同学真的很有想法,很有客户的感知力,大概率是能够找到合适的机会并且落地的。
比如我之前就非常关注大客户的一些动向,这里面包括我自己和客户去共创,在答疑群里面看到客户的提问,从这里面我就能够Get到客户的众多需求,从需求里我就可以判断哪些问题是共性的,哪些事是个性的。
剩下的就是在等待机会,整个组织在推进过程中是有一定的惯性的,并不可能东一时西一会,这个时候我们只要等待在合适的时间点上把这个事情提出,并且讲清楚它的价值,协同好大家的利益,最后把它执行落地。比如说在新的财年述职的时候,就可以专题的形式来提出来,来使得你的主管和合作方相信这个事情是能够带来业务结果的。
甚至你觉得可以挑战一下的话,你甚至可以拉一个专题的讨论会,说清楚它的价值以及它拿到更具挑战性的结果,我相信很多主管都会认同你的想法的。一定要大胆点,总之就算老板不同意,至少老板知道你是非常有创意,有想法的,你也损失不了什么。
学会等待
最后就是等待,我们不可能说找到一个非常蓝海的市场,又找到一个非常强力的团队,然后还有很多人愿意支持我们的事情,这个想想都不可能。所以我们确实要学会去等待,从我们生态的角度来看,整个自然界里面动静结合,但是大部分事物静止止的,只有少部分在运动,只有动的那部分反而是点缀了整个自然界。对于我们的职业发展和社会发展也是一样,不大可能一直会有很大的机会,经济都有很大的增长,使得你在这里面都能够做到非常大的突破。而往往就是我们积累了一段时间,才可能能等待到一个非常好的机会,这个时候我们只要把这个机会抓住就可以了。
当然也要有一个清晰的洞察力和判断力,在我们发现某一个业务板块甚至是公司已经不大可能能够创新的时候的话,我们可以选择新的一个方向或者行业或者公司团队。
总结
总之,在想做到一个很大的突破的时候,往往是需要天时地利人和的。当前的社会是一个相对自由的环境,还是有很多的创新和创造空间的,因此我觉得时代给到每个人的机会还是非常多的,只要你愿意去折腾,愿意去拼搏,都有可能获取到超出预期的结果。我也都已经看见很多做到很多0~1突破的人,机会就在那里,竞争激烈,就看你有没有勇气去尝试一下。
所以相信自己,大胆的去尝试一下,如果没有等到合适的机会,不妨再等等或者跳跳。