2008年,是中国互联网发展的10周年,同时也是智能手机的元年。在这一年,Google正式发布Andoid操作系统,统一了智能手机操作系统平台。凭借着移动互联发展的浪潮,智能手机应用软件(APP)快速普及,推动了一大批互联网创业公司的快速发展,Android开发也跟随着发展得如火如荼。
经历了快速发展的10年黄金期,移动互联创业的风口,如今渐渐消失,Android开发市场慢慢趋于饱和。而当初移动互联处于风口时,自学,转行以及培训机构出来的大量Android开发从业者,已经没有那么多优秀的工作岗位供他们选择。特别是当Google推出Fuchsia,传言要抛弃Android后,更是引发了一大波Android程序员的集体恐慌。
难道Android开发真的要凉凉了吗?Android工程师们应当如何应对当下的局面呢?
其实当下市场的供需关系不平衡不代表没有需求,只不过市场对Android开发的要求变了,不再局限于简单的代码堆页面,更多的要求基础架构,底层开发能力。
为什么会出现这种现象呢?
众所周知,虽然Android原生开发用户体验好,但是开发成本和不同平台的迁移成本都比较高。而单纯的web开发虽然可以跨平台,开发成本低,但是用户体验差,而且访问原生的能力受限。因此将web和原生打通融合就成为大前端新的发展趋势。
什么意思呢?
就是说纯粹用Android原生开发页面已经不再符合互联网大厂的要求,但是单纯的web开发又有不可逾越的技术壁垒,所以需要Android原生在底层优化自己的基础服务,封装更多的API,提升web运行性能和访问原生的能力。
Google真的会抛弃Android吗?
我觉得不会,至少在今后很长一段时间内不会。因为Google有自己的Chrome操作系统,和Android操作系统结合起来会形成很好的生态,虽然有Fuchsia的出现,但是也不会彻底改变Android的基因。
那么接下来问题就变成了Android程序员如何拥抱变化,提升自己的竞争力呢?
- 提升自己的技术能力
除了Android开发的基本技能,更要打好通用技术基础,比如数据结构和算法,计算机网络,操作系统,计算机系统结构等,对技术的深层理解有很大帮助。纵然技术框架在不断更新迭代,但是通用的技术几乎不会改变。
如果说Android开发技能是我们的招式,那么数据结构和算法等通用技术就是我们的内功。它们是我们不断修炼,不断提升自己的道路上绕不过的坎。如果没有深厚的内功,我们打出去的招式也是无力的,一旦面对突如其来的变化,我们只能回天乏力,溃不成军。
- 扩大自己的技术面
前段时间我研究了下今年互联网公司对于中高级Android开发工程师的招聘要求,基本都包含了一条:拥有Hybrid开发经验。为啥?因为仅仅拥有单一的Android开发经验已经不能满足互联网快速发展的需求了。这也印证了上文中提到的Android开发的角色正在发生变化,正在从前端走向后台。
那我们就不能再单点突破了,要迅速从点扩展成面,再结成网。Android开发工程师需要了解web开发框架,浏览器原理,后台服务架构等其他开发技术,整个过程总结起来就是一部全栈工程师成长记。
- 努力在一个细分化领域中做到第一
努力做到全栈工程师还不够,因为你依然是一个执行者,并没有参与到游戏规则的制定中来。在全方位了解了整个技术架构后,选择一个自己感兴趣,发展前景不错的技术领域不断深入学习,努力做到这个行业的第一。并且通过宣传,让别人认识你,了解你,相信你,不断向外展示自己的研究成果,强化自己的标签和影响力。最终,你会接触到这个领域的顶尖人物,参与到他们的规则制定中。
在互联网寒潮中,Android开发真的要凉凉吗?希望以上我对Android开发的解读能够给你带来一丝光明和希望。作为一名Android开发工程师,让我们一起夯实技术,拥抱变化。未来已来,今天的你,改变自己了吗?