移动开发者的未来

1,916 阅读5分钟

欢迎关注公众号:sumsmile /专注图像处理的移动开发老兵

一、移动开发者的现状

历经十年,移动开发生态从萌芽到爆发,一路高歌猛进,到今天已经渐趋于稳定。现在攒一个初级的app并不需要高深的技术,有各种各样的开源组件供选用,绝大多数开发问题都能在google上找到答案。

2012至2016这五年是移动互联网最热的时段,市场上有大量Android/iOS/H5招聘,工资也非常高,主要是业务线开发岗。种种原因在国内,大多数开发者都是从事这类的业务开发,只有少数人致力于基础技术领域。

以我现在的团队来看,这个比例大概是9:1。

因为业务迭代比较快,同时各种线上问题、协调沟通,一个工程师从事业务开发三四年时间就容易触碰到技术的天花板。不一定会影响晋升涨薪,因为业务是现金流,公司要保证业务线的骨干成员稳定,但是一定会影响你跳槽。

一个员工的安全感不是公司给的,是你能很容易的跳槽。

二、移动开发者的未来

一个普通的移动开发者,如何突破天花板?没有办法,要么期待有新的终端生态出来,需要大量写UI交互的移动工程师。要么努力往10%的底层开发者里突破。所有的问题归根到底会回到计算机的三驾马车:数据结构、算法和组成原理,以及三大浪漫:操作系统、编译原理、图形学。

根据自己对这个行业的理解,梳理了移动开发值得长期深入的5个领域,如下图:

当然还有一些偏基础性的技术领域,比如IM通信技术、AR/VR等,岗位相对较少,不做探讨。

对大多数朋友来说,选择性能&网络、基础架构方向可操作性更好些,与业务开发有一定的交叉,过渡较自然,但是你容易的事情别人也容易,想做的出类拔萃也不容易。

罗振宇说过一句话:“难走的路上从来都是竞争者很少”。 我补充一句:容易的路上从来都是千军万马过独木桥。

对于学习能力比较强,精力旺盛的朋友,我建议去研究多媒体技术,随着硬件和网络带宽的突破,信息的呈现形式越来越丰富,必然会高度图像化、视频化,抖音快手的异军突起就是最好的证明,这个行业方兴未艾。此外这个领域有大量前置学科知识需要学习,有比较高的门槛,相当于已经把90%的人挡在门外,竞争远没有其他细分领域激烈。

至于移动AI,即边缘计算,实际上主要做的是AI技术迁移到终端上,有大量工程化和针对机型的算法优化工作,非常依赖实际的项目,如果没有人带领,慎入。

再谈谈跨平台技术,这个领域前赴后继,从最开始的hybrid,到RN,到近两年火热的flutter技术,可以看到大前端领域的大牛对跨平台技术的执着,本质是想革命性的提升效率,我个人觉得是非常好的方向,但是有一定的风险,只有少数大公司有实力自研跨平台技术,大多数公司只是引用,那又回到了开篇说的问题。

题外话:选择一门技术,要看“今天”、“明天”和“后天”。举个例子,直播是今天的技术,人工智能产业化是明天的技术,无人驾驶是后天的技术。

对我们个人来说,生命有限,职业生涯的黄金年龄更是有限,要从底层学科划分中,选一个今天有用武之地、明天能扩大市场、后天能上浪潮之巅的基础技术领域。

三、其他出路的探讨

架构师:建议不要轻易把架构师作为目标,架构师是团队变大、业务拓展的产物,和技术并没有直接的关系,A公司的架构师很难空降到B公司当架构师,太依赖团队资历,除非你同时是某个领域的专家。

转技术管理:如果确实对技术无感,有良好的综合素养,技术管理是一个很好的方向。不建议年轻的朋友过早的进入,深度决定高度。

转产品:有产品热情、有天赋的工程师转产品是非常棒的一条路,身边有不少这样的案例,有技术背景加持在产品团队还是挺欢迎的。我个人觉得随着中国的IT技术渐趋成熟,将来会有类似 photoshop、matlab这样基础的工业级软件在国内诞生,业务出身的产品经理是难以胜任的。

以上是我对移动开发的思考,欢迎交流探讨

欢迎关注公众号:sumsmile /专注图像处理的移动开发老兵