写给应届生:客户端开发真的要被劝退了吗?

最近脉脉上出现了不少劝退客户端的声音。比如

exit_client.png

什么东西一旦押韵了,好像都挺有道理的样子。

好奇地搜索一下,的确有些不对劲:

exit-client2.jpeg
Xnip2020-11-28_14-50-25.jpg

看了几个帖子,总结下来劝退的理由有这么几个:

  1. 客户端开发在走下坡路,就业市场在缩小
  2. 前端抢走了很多客户端的活
  3. (针对客户端+前端)天花板低,很难做到高级别
  4. 现在客户端面试问的很偏很难,难度很大

客户端的需求在缩小,这确实是一个事实。

移动互联网创业热潮早已经过去,一方面没有那么多新创业公司涌现了,另一方面互联网也有赢家通吃,大厂更大,小厂生存空间越来越窄的苗头。当年知道什么是weak,会写个TableView就能拿个15k的iOS开发offer的好事情已经没有了。

不过,一个市场是买方市场还是卖方市场,从来都是需求和供给两方面决定的。而技术人才的供给,相比需求存在一定的滞后。从一个领域需求火爆,到大批新人学成进入这个领域,中间会有几个月到几年的时间差。可能这个时候需求变化更快,火爆行情已经过去,新进入的人就会面临窘境。比如在移动互联网最火热的2015年很多人去学了iOS开发,然后发生了2015年股灾,地主家也没有余粮,创业公司没有投资人的输血纷纷倒闭,转过年这批iOS新人发现:

ios.jpg

但反过来想,客户端开发领域已经经历了这么一轮高开低走,现在没人愿意学了,但市场上的需求,其实并没有消失,很多大厂依然需要客户端。于是就迎来了一轮市场行情的反转,很多大厂不得不想尽办法招揽应届生做客户端,供不应求,招聘时就不得不略微放放水,比往年要求降低一些。这难道不是一种机遇吗?

有人担心即使现在上车了,以后客户端领域路会越走越窄。如第2点所说,前端抢走了很多客户端的活。开发原生客户端需要iOS、Android各开发一个App,成本的确更高。很多公司的业务用小程序就完全能够承载了。

其实手机这个平台有一个很有意思的现象,它没有像桌面平台一样,绝大部分应用都从客户端转向了Web。现在大家用电脑,除了Office三件套、Adobe全家桶这种专业软件,大部分的时间都是在用浏览器。而手机就不同,大家每天在用的是App,移动端浏览器用的并不多。

个人觉得,这种差异主要是因为手机和电脑人机交互的差异。

电脑上信息输入主要靠键盘和鼠标。而手机就丰富多了,触摸屏、摄像头、话筒、还有GPS、气压计、陀螺仪等丰富的传感器。要利用好这些硬件提供的信息,势必需要访问手机操作系统提供的各种API,这种场景下Web就远远不如原生了。比如要做需要处理音视频输入的应用,就只能用原生。

另一方面,用户在移动端主要依赖触摸屏操作,Web页面手势操作的体验不如原生。另外Web的入口是网址,在移动端用软键盘输入网址远远不如PC键盘方便。

因此,Web在移动端比较适合做重展示、轻交互的应用,比如电商,外卖。但重交互、需要处理多媒体信息的应用都会选择原生,比如短视频。

另外Web的交互体验始终和原生有一定差距,所以重视体验、对成本不敏感的大厂都不会放弃原生开发,Facebook曾经尝试过纯Web实现App,后来也回归原生了。相反,大厂会投入大量人力优化体验,除了需求开发,会专门投入人力做性能优化、稳定性、架构、安全、基础设施等方面,每个方向都有相当的技术深度供你挖掘。

因此,对于应届生来说,如果志在一线大厂,客户端的需求规模并不是一个问题。

再说天花板问题。据说在阿里,P8以上后端占多数,这的确给人一种客户端天花板低的感觉。

但阿里这种情况,有其业务特点的因素。阿里是做电商的,电商系统的复杂度在于订单、库存、支付这些复杂业务逻辑的处理和高并发的挑战。这些部分都是后端在处理的,前端/客户端只是用户操作的入口,大佬多后端合情合理。

但有些业务类型,比如短视频App,很大一部分复杂度在于用户的创作和观看的体验(当然还有后端的视频服务、并发支撑和推荐算法),这部分都是客户端在支撑的,尤其是视频拍摄和编辑,有相当的复杂度。因此在短视频团队中,客户端的重要性和电商团队相比就会重要的多。这种团队客户端开发就会有更多机会走上更高的位置。

另外说句老实话,P8以上的能有几个,大部分人不需要想这么远。

说到最后一个问题,客户端社招面试的难度。

  1. 可能是一种认知偏差,难道大厂的前端后端面试就不难吗?
  2. 如上面所说,二三线公司的客户端需求的确变少了,所以市面上主要是大厂在招聘,那么统计意义上整体难度确实提高了,但同层次的公司面试难度则未必。
  3. 和15年比确实变难了,但15年的情况并不是一种常态。

说了这么多,我个人觉得客户端绝对不像那些劝退言论说的是个大坑,相反,对现在的应届生来说,是个不错的进大厂机会。很多大厂校招都不要求任何客户端开发经验的,只要基础知识扎实,代码能力过关就行了。

比如我司,字节跳动。

我们的TikTok App已经连续好几个月蝉联全球App下载榜首,印度的封禁和特朗普的威胁没有阻挡我们的步伐。

团队仍然有很多客户端工程师的需求,坐标上海科技绿洲。

如果你是应届生,可以积极准备明年的春招,对客户端方向的职业发展如果有困惑,也可以和我联系,我会尽量在工作之余回复。

如果是已经工作的客户端同行,欢迎找我内推。

我的邮箱(#换成@):martin.lv#bytedance.com

推荐阅读更多精彩内容