本人是一个很少做输出的人,总是习惯于接纳别人的输入,很少动笔写文档、文章、博客。所以想在这里写点东西,写写生活的感悟、技术的学习等等,锻炼下自己的文笔。
本人2020毕业的时候就进入了某互联网大厂从事iOS开发工作,每天工作之余会学习一些iOS底层的知识,总结一下大概就是勤勤恳恳。最近看了很多脉脉上关于客户端的发言和讨论。大家都在说移动端开发前景堪忧,关于这一点写一下自己的想法和对自己未来的规划吧。
- 从需求量上来看:iOS和安卓的需求量确实在逐年递减,因为随着前端技术栈的成熟和手机设备性能上的提高,许多小公司开发App的时候首选的技术栈可能是前端,他们不需要打磨一款App的流畅度等用户体验,也没有钱养iOS和安卓两套团队。
- 从苦逼程度上来看:客户端是整个项目链路的最后一环,运营-产品-后端开发-客户端开发。这就导致了,如果出现问题,第一个需要去排查的是客户端开发,你需要调取用户的log日志,看是否是数据问题等等。
并且客户端需要关注很多App的性能优化,不能出现Crash和卡顿,出现Crash必定问责客户端;
同时客户端受限于苹果应用商店,是不能动态发布的,想做改动必须要发版,这就导致一旦出问题就会是大问题,毕竟在苹果审核上线之前是不能修改的。前端的实现可以动态上线,不管对于研发还是对于公司都是有利的,只要监控到位,出现问题可以及时修复。
- 从职业发展来看: 后端开发负责整个业务的数据和逻辑,客户端和前端负责界面和用户的交互,这就意味着后端可以更了解整个业务。开发的过程中也往往是后端和产品讨论需求的实现而客户端大概率是工具人,界面按照UI的想法画,交互按照产品的想法来,业务数据是后端给的,客户端做就可以了。
以上是本人同意的客户端的缺点。
那客户端就没有出路了吗?其实并不是,虽然需求人数在逐年减少,但是客户端的技术壁垒还是存在的。前端虽然可以搭建一款App,但是一些底层的容器或者sdk还是需要客户端来提供。因此我的理解是对于目前的客户端开发小伙伴来说,可以多探索App的性能优化,学习更为偏向基础技术的知识。
说了这么多,那么我的职业规划是怎样的呢?
正如上面所说,论职业天花板来看是后端>前端>客户端,虽说在大厂没有几个人能触摸到天花板,但是不想当将军的士兵不是好士兵不是吗。因此我为自己规划了接下来一年的规划:
- 着眼于当下,对于现在的工作要更加努力,在公司的时候就做工作的事情,做好每一项工作,及时输出总结文档。 争取今年能升职加薪。
- 不断充电,每天花费1个小时学习公司优秀的iOS知识分享(偏底层)。为未来跳槽做准备。
- 未雨绸缪,每天花费1-2个小时学习后端开发,为未来转后端开发做准备。即使不转去做后端开发,在大厂前后端分离的情况下,多学习一些后端的知识并没有坏处 。学习一年后端开发后,可以尝试内部转岗到后端,失败也没有任何坏处。