技术团队最重要的在于如何做长期和短期的结合。短期的事情可以证明团队的能力,但如果特别注重短期会导致非常疲惫。所以才需要短期所做的事情要兼顾长期的规划,这点苹果、微信、阿里都做的非常好。
如果你真想做好长期的事情就必须要做到独立。独立意味着两点:
1.能力足够实现短期的价值。
2.不需要依赖太多资源。拿太多资源意味着很难在很长时间满足老板或投资人的期望,因些会很难做出自己独立的判断和坚持。
如果目标真的是做长期的有价值的事情的话,不要去贪图短期的风口或拿太多的资源。需要有抵制诱惑的【能力】或【钞能力】。
要能够很好的结合技术、业务、目标三者,就要先做个比业务更懂技术、比技术更懂业务的人。
觉得实际的例子:我在客户的公司呆了两个月,我其实就是在观察他们在做什么,他们平遇到什么样的问题,需要什么样的帮助,那个时候的业务管理手册我是要背的,我要象这些业务的人员一样的了解业务。当业务人员遇到技术人员的时候会提出一大堆的技术需求,这个时候就需要非常了解业务,并且了解自己长期想做什么事情,才知道如何去做取舍。所以需要能够在100个需求里挑出几个来做。
这100个需求是怎么来的,是需要有业务的理解,梳理和甄别的能力的,要跟非常多的业务方建立关系。要挑出哪几个要做的,就要识别出短期价值,同时也要在长期的技术主线上的,虽然看起来是在做短期的事情,但是也是在为长期的目标添砖加瓦。
所以就要对一个技术leader,一个有理想的技术leader天然的提出了,你必须是个懂业务的人的要求。而不是一个程序员到后来面临升职加薪的问题,想做技术大牛技术leader,才想去了解点业务。不是这样的。如果是有技术理想的话,希望能做独立判断的话,本身天然就要成为业务专家,才能做取舍。
要达到这个要需要做到三点:
第一、必须要勇气跳下水。
比如在AI领域一个轰动的事情,alpthago战胜李世石的事情就是由一群熟悉围棋的业余爱好者的ai工程师做出来的,如果不了解围棋是不可能做出alpthgo来的。如果要做ai,并且让ai真实帮助到行业,或者是想要做行业数字化,你本身必须成为行业专家,领域行业知识。不能指望对方来理解你的技术,告诉你要用什么技术来实现什么功能,这几乎是不可能的。退一步,起码真正的成为该业务领域的【业余专家】,然后才能赢得这个领域真正的专家的尊重。你们才能真正去了解和转化这个行业的专业的经验或知识。
第二、必须要有充分的耐心。
比如:要做真正的AI技术的落地现在没有成功的先例,可能要积累五年以上,无论是医疗还是自动驾驶还是农业,不坚持个五年以上是非常难有所作为。
比如:苹果的mac,微软windows都是不断升级而慢慢占领市场的。
第三、把行业的经验转化成计算机的能力
如果不进入行业领域的话,你看到的问题都是横向(技术)的问题,无论是无监督学习还是计算框架、ai芯片这些都是说我试图造一个东西供给其它 ai的开发者使用,这里边的核心是ai的学习能力【是否在持续的提高】到底是学习什么,解决什么样的问题问题有没有从易到难。这个是需要行业的需求牵引的,把行业经验转化成计算机的能力的时候对ai的学习能力提出了越来越高的要求,是这个要求牵引着我们把技术越做越好。
要把技术做好,行业经验的牵引是必不可少的。
有个小兄弟做海鲜类商城,说自己在学习liunx和底层技术,我就问他liunx内核和底层的技术对他的工作产生了哪些帮助?他却含含糊糊的答不上来,说学了肯定是有用的。我内心觉得这样一个热爱学习的同学找不到重心,浪费精力而感觉可惜,我试图跟他讲把学习和业务场景结合起来,理解业务的复杂性,程序员通过提升软件系统服务能力创造价值。但是他却不一定听得进去。
现在再看ai,高并发,分布式还有所谓的底层技术,就会发现,并不是因为这些知识比较高深、比较时髦秀多公司去用,而是因为这些公司的业务上需要实现这些场景,而这些技术正好可以解决。