这个问题可以掰开几部分来看。
先说“什么都懂一点”,是不是一件好事?肯定是。
这里面不好的地方就如题所说,什么都懂一点,意味着什么都学了一些,学习的精力的分散了,而人的总精力是有限的,导致在具体的一个方向上投入的时间不足,才导致了有“什么都不精”这个感觉。
但是跳出来想,什么都懂一点有什么好处呢?很直观的是,在接触做不同事的人的时候,能够十分顺畅地跟他们沟通工作,因为他们说的点,你了解。这个很好解释,就比如开发在向产品说明需求不好实现的时候,有时候会有一种对方get不到的感觉。因为每个人自身所掌握的知识和信息都不同,沟通的时候都容易从自身的角度出发,看待问题的角度不一样,就导致了沟通总是不在一个频道上。
那这个时候,什么都懂一点的好处就出来了。因为对方说的点你能懂,当然你本身也会站在自己的角度来看同一个问题,那么一综合,你就能知道双方的共识点和矛盾点分别在哪里,大大促进了找矛盾和解决矛盾的这个进程。也就是说, 什么都懂一点,在工作沟通上有大大的优势 ,可以说是必要的。
再往深一步想,
再回头说“什么都不精”,既然前面说了什么都不精的原因,就是精力太分散,导致单项投入不足。怎么解决呢?
简化一下问题之后答案就显而易见了:假如工作要求会硬件,但是硬件不精怎么办?假如工作要求会软件,但是软件不精怎么办?假如这个工作的其它要求我都满足了,唯独某一项不精怎么办?当没有更好的选择时,答案自然就是, 学啊!
不过,现在要学的东西从一项变成了多项。如果问题简化成了一项,那基本上就没有什么可犹豫的。除非有更好的选择,这里暂时不讨论更好选择这种情况。那么只要花时间钻在一个事情上,久而久之,就会得到积累,迟早有一天会变得精通。
要学的东西变多了,怎么办?还是一样的,也是一件一件从不精变得精通。假设“懂一点”用1分来表示,精通用10分来表示,把A技能从1分学到10分要花m个小时,把B技能从1分学到10分要花n个小时,把A技能和B技能同时精通要的时间就是m+n个小时左右,绝不会只有m个小时或者n个小时(这里假设AB技能相互独立,不存在相关性)。
这里问题的点就变成,我连挤出m个小时都困难,怎么能够还比别人多挤出n个小时?别人只需要精通A,只需要挤出m个小时就够了,我还要挤出A和B,是不是不公平?

要说明白这个问题,先引入边际效应这个概念。举个例子,A技能从一点都不会(0分)到了解概念(1分),可能只需要1小时,从了解概念(1分)到懂一点(3分),可能需要5到10个小时,从懂一点(3分)到能用来解决问题(6分),可能需要50到100个小时,从6分到8分,可能就需要500到1000个小时,从8分到9.9分,可能就是不计投入时间的无限逼近的过程。 这就是边际递减,当一件事的投入到达一定边际的时候,收益会大大降低,而投入则大大增加。 实际上,即使是真正只投入一件事,大多数人其实也是挣扎在6分到8分的这个过程, 第一,能坚持投入1000个小时在同一件事的不是很多,现实条件有时也不允许;第二,在大多数情景下,6分到8分其实就已经够用了。

所以, 问题并不是需要解决多挤出n个或m个小时的问题,而是怎样把自己的1000个小时合理地分配给A和B,使得收益最优的问题 。比如说,这段时间工作需要用到A技能,那么本来就能在工作时间薅到时间来练习A技能,顺势而为,让A先达到6分,等下段时间需要用到B的时间,再把时间分配给B。再比如说,工作需要同时用到A和B,但都只需要用到3分就可以,那么把时间平均分配给两者,也是一种顺势而为,剩下的从3分到6分的投入,就需要自己额外补,怎么分配又是自己另外的判断了。
这里提到两种客观情况。
第一种是, 如果工作只需要用到某一种技能,确实会更快学会 ,这会在明面上造成一种客观现象:“如果这个技能我在工作中没有用到,但我想要学,我就必须花更多的时间来补”。因为显然的,能在工作中利用的学习时间更多,获得的实际经验也是无可比拟的。但如果考虑把时间拉长来看,由于工作中实际用到的也会有限,大部分人也会慢慢陷入6分~8分这个区间而没有进一步的长进,彼此的差异就会缩小,所以才会有“一个经验用三年这样的说法”。
第二种情况,我想展开来说说,就是 到底是精通一件事好还是什么都会一点好 。
这件事应该是分阶段的 。刚毕业的时候找工作,需要的是跟某个岗位匹配的技能,所以用人单位看重的是对于具体某个技能的掌握程度。工作几年后,情况发生了一些变化,当职业发展去到了一个瓶颈,可能会选择晋升,那么需要的是多方面的综合能力,比如沟通协作能力、执行力、调研能力等等,那么需要的就更多是都会一点;可能会选择跳槽,那么这时候也是跟毕业时找工作一样,但用人单位这时候更多看的是岗位跟工作经验的匹配度,因为工作经验所包含的,不仅仅只有几个技能。
为什么会有这样的变化?就延续刚刚所说的,大多数情况下单个技能或者能力达到6到8分就可以了, 但是,只有单个能力完成不了一个完整的任务 。
这里举的例子稍微大一点,比如做一个智能硬件类产品,需要做前期的市场调研,需要做技术选型和规划,需要做项目排期和风险管理,需要做硬件设计和软件开发,需要做功能测试和验证,需要生产质量管控和供应链管理,需要做市场营销和成本管理,需要做售后服务和维修。这么庞大的一个生产组织流程,而开发只是担任了其中开发的工作,之所以习惯了这种模式,是因为在一般的过程中,是由上级分解好了任务了,再分配给下面的人,作为普通的工程师,只需要接具体的任务就好了,所以就需要精通单个能力。
但是分解任务分配任务的活儿,总是有人在做。那么这个位置,就必然是“什么都懂一点”了 。他可能只把A技能修炼到7分,但可能ABCDE……的知识点都到5分以上,这个广度多广和深度多深就决定了能把这件事做得多好。毕竟,如果哪个环节变成了木桶短板,那残酷的市场竞争必然会给产品上一课。
所以,不管是先精通一个点,还是先什么都懂一点,大家的终点都是异曲同工,最终只是具体所走的路线不同罢了。
总结一下:
- 什么都懂一点不是坏事,在工作沟通层面有天然优势。到了工作深入以后,甚至会变成一种必要性,因为只懂其中一两点完不成一个完整的任务。
- 也不需要什么都精通,大多数时候够用就行,但怎么判断什么程度够用,要怎么分配时间,确实依赖于个人判断。但不管怎么保持怎样,保持学习。