Android研发技术人员的护城河是什么?

最近在思考一个问题,对于技术人员来说,护城河是什么呢?
我想通常答案应该是技术比别人强 。
那我们说一个人技术比别人强到底指的是什么?哪里比别人强呢?
在我看来一点是在某个技术领域他比别人懂的更多 。
另一点是在遇到问题的时候,他能比别人更快速的解决这个问题 。
我们分析来看看 。
比别人懂的更多是护城河吗?
我们应该分阶段来看 。
如果是一个技术领域的发展初期,那懂得多确实是护城河 。因为在发展初期,知识点很多,你掌握的知识点比别人多,那你就比别人强 。
 
当一个技术发展到成熟期的时候,大量的知识点已经被总结沉淀下来,越来越多的人会掌握这些知识点 。甚至这些知识点都已经被沉淀到框架里了 。
 
当一个知识点被越来越多人掌握的时候,那说明这个知识点就不再稀有,那他能证明的能力就微乎其微了 。他能证明的,只是你不比别人差 。
我们举个例子 。
微积分刚出来的时候,那掌握微积分的人一定是很少的,这种人就是稀有人才 。
但是看看现在,各个大学课程里都开始教授微积分,那会微积分,并不能证明你比别人强,不会微积分,却能证明你比别人弱 。
 
我们再举一个技术方面的例子 。
我本身是做Android/ target=_blank class=infotextkey>安卓的 。在安卓刚刚兴起的时候,会做一个安卓 App,就已经是稀有人才了 。
那是因为开发安卓 APP 这个知识点当时掌握的人很少 。
慢慢到后来我们就发现了只会开发 Android APP 很难找工作了 。
你需要掌握更多的知识,比如说插件化,比如说图片加载,比如 Activity 启动流程等等 。

Android研发技术人员的护城河是什么?

文章插图
 
我记得我刚毕业的时候,图片加载的3级缓存是一个经常被考的知识点 。
但是现在面试考的是什么呢?
是插件化的原理,Gradle 的知识等等 。三级缓存很少再考了 。
 
为什么呢?因为这个知识点已经被大多数人都知道了 。
就算知道这个知识点也无法证明你比别的候选人强 。
所以现在的面试题目越来越难了,各种原理、各种 hook 。
 
但是更恐怖的事情是什么呢?
现在就连插件化、系统源码这种更深层次更底层的原理,知道的人也越来越多了,网上关于这些知识的分析的文章也越来越多了 。
 
所以我们可以预见的是,再往后插件化、Gradle 等等这些知识也不能再证明你比别人强很多了 。如果这些知识你不懂,那只能说明你比别人差 。
Android研发技术人员的护城河是什么?

文章插图
 
说了这么多,我想表达的问题是,这里懂的更多,本质上是信息差 。
把信息差作为护城河并不是一个好的选择,它是有时效性的 。
 
那我们真正的护城河是什么呢?
 
我们前面说到知识点并不能作为护城河,但是能快速的学习吸收知识点,并且能实际运用就是一个护城河 。
说白了就是学习能力和解决问题的能力 。
 
那学习能力是什么?
是一个新知识到来的时候,你能比别人更快地掌握 。通过学习能力,把信息差不断扩大 。这是护城河 。
 
那解决问题的能力是什么?
是遇到问题以后,能想到用哪些流程去解决,能想到用哪些知识来解决 。毕竟每个人解决问题的过程是不一样的 。你能比别人快速地解决,那这就是你的护城河 。
 
这两个能力本质上来说是对知识的运用 。
 
我们再往深想一想,更深的护城河是什么呢?
是创造知识的能力 。
 
什么叫创造知识呢?
以安卓为例,第一个做出插件化这个事情的人,就是在创造知识 。第一个写出图片加载库的人,就是在创造知识 。
前端也一样,写出 React 和 Vue 的人,就是在创造知识 。
 
创造知识,听起来很大 。我们分析一下 。
 
如何去创造呢?
首先我们要发现一个别人没有解决或者没有彻底解决的问题 。
这里没有彻底解决是个关键 。说实话以现在技术的发展,要想找一个完全无人解决的问题已经很难了 。就像图片加载库有很多,但是他们之间是有各自优点的 。这些优点就是别的框架没有彻底解决的问题 。
 
然后我们要给出解决方案 。


推荐阅读