最近在思考一个问题,对于技术人员来说,护城河是什么呢?
我想通常答案应该是技术比别人强。
那我们说一个人技术比别人强到底指的是什么?哪里比别人强呢?
在我看来一点是在某个技术领域他比别人懂的更多。
另一点是在遇到问题的时候,他能比别人更快速的解决这个问题。
我们分析来看看。
比别人懂的更多是护城河吗?
我们应该分阶段来看。
如果是一个技术领域的发展初期,那懂得多确实是护城河。因为在发展初期,知识点很多,你掌握的知识点比别人多,那你就比别人强。
当一个技术发展到成熟期的时候,大量的知识点已经被总结沉淀下来,越来越多的人会掌握这些知识点。甚至这些知识点都已经被沉淀到框架里了。
当一个知识点被越来越多人掌握的时候,那说明这个知识点就不再稀有,那他能证明的能力就微乎其微了。他能证明的,只是你不比别人差。
我们举个例子。
微积分刚出来的时候,那掌握微积分的人一定是很少的,这种人就是稀有人才。
但是看看现在,各个大学课程里都开始教授微积分,那会微积分,并不能证明你比别人强,不会微积分,却能证明你比别人弱。
我们再举一个技术方面的例子。
我本身是做安卓的。在安卓刚刚兴起的时候,会做一个安卓 APP,就已经是稀有人才了。
那是因为开发安卓 APP 这个知识点当时掌握的人很少。
慢慢到后来我们就发现了只会开发 Android APP 很难找工作了。
你需要掌握更多的知识,比如说插件化,比如说图片加载,比如 Activity 启动流程等等。
我记得我刚毕业的时候,图片加载的3级缓存是一个经常被考的知识点。
但是现在面试考的是什么呢?
是插件化的原理,Gradle 的知识等等。三级缓存很少再考了。
为什么呢?因为这个知识点已经被大多数人都知道了。
就算知道这个知识点也无法证明你比别的候选人强。
所以现在的面试题目越来越难了,各种原理、各种 hook。
但是更恐怖的事情是什么呢?
现在就连插件化、系统源码这种更深层次更底层的原理,知道的人也越来越多了,网上关于这些知识的分析的文章也越来越多了。
所以我们可以预见的是,再往后插件化、Gradle 等等这些知识也不能再证明你比别人强很多了。如果这些知识你不懂,那只能说明你比别人差。
说了这么多,我想表达的问题是,这里懂的更多,本质上是信息差。
把信息差作为护城河并不是一个好的选择,它是有时效性的。
那我们真正的护城河是什么呢?
我们前面说到知识点并不能作为护城河,但是能快速的学习吸收知识点,并且能实际运用就是一个护城河。
说白了就是学习能力和解决问题的能力。
那学习能力是什么?
是一个新知识到来的时候,你能比别人更快地掌握。通过学习能力,把信息差不断扩大。这是护城河。
那解决问题的能力是什么?
是遇到问题以后,能想到用哪些流程去解决,能想到用哪些知识来解决。毕竟每个人解决问题的过程是不一样的。你能比别人快速地解决,那这就是你的护城河。
这两个能力本质上来说是对知识的运用。
我们再往深想一想,更深的护城河是什么呢?
是创造知识的能力。
什么叫创造知识呢?
以安卓为例,第一个做出插件化这个事情的人,就是在创造知识。第一个写出图片加载库的人,就是在创造知识。
前端也一样,写出 React 和 Vue 的人,就是在创造知识。
创造知识,听起来很大。我们分析一下。
如何去创造呢?
首先我们要发现一个别人没有解决或者没有彻底解决的问题。
这里没有彻底解决是个关键。说实话以现在技术的发展,要想找一个完全无人解决的问题已经很难了。就像图片加载库有很多,但是他们之间是有各自优点的。这些优点就是别的框架没有彻底解决的问题。
然后我们要给出解决方案。
那这个方案,就是创造的知识。
第一个写图片加载库的人,一定是发现了图片加载不方便的问题,然后提出解决方案。
所以我们可以说,创造知识的本质,是要发现问题和解决问题的能力。
我们再往下想,那如何发现问题呢?
需要我们的敏感性,在遇到问题的时候,能意识到这是个问题,并且能想想,我是不是可以解决这个问题。
其实我们仔细想的话,日常生活中遇到的问题是很多的,只是我们都忽视了。
那解决问题的能力是什么?
是在之前领域有了积累,可以迁移过来,解决现有问题的能力。
本质上是类比迁移能力。
就像写图片加载库的人,之前应该有见过其他领域的图片加载,可能是pc端,可能是前端。
就像汽车的发明,本质上是把汽油机迁移到三轮车上。
我们发现解决问题的能力其实提到了两次,一次是运用知识解决问题,一次是类比迁移知识解决问题。
所以我们最后总结一下,技术人员的护城河是什么呢?
是学习能力,发现问题的能力,运用知识解决问题的能力,类比迁移知识的能力。
大家觉得呢?
最后
在这里我也分享一份收录整理的Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料
这些都是我现在闲暇时还会反复翻阅的精品资料。里面对近几年的大厂面试高频知识点都有详细的讲解。相信可以有效地帮助大家掌握知识、理解原理,帮助大家在面试季取到一份不错的答卷。
当然,你也可以拿去查漏补缺,提升自身的竞争力。
如果你有需要的话,可以前往GitHub自行领取
喜欢本文的话,不妨顺手给我点个赞、评论区留言或者转发支持一下呗~