作者:宗心
一、 前言
本文仅以个人观点阐述未来的端研发趋势和人才岗位结构趋势的要求,进而引出闲鱼技术团队今天要做的事情,闲鱼技术团队作为集团创新产品的先头兵,一方面希望通过持续的技术革新为业务带来核心竞争力,另一方面也希望为集团开拓新的技术领域从而引领新的技术风潮,通过技术带来长期的效能红利。
KUN作为闲鱼技术团队在终端技术这一未来岗位的核心转型的重要基础设施,在推进过程中一定也会遇到各种不同的声音,因此更有必要让大家了解我们的长期构想和实现路径。道路是曲折的,我们无法准确预测未来,但是可以肯定的是,闲鱼技术团队一直以创新突破作为团队的核心灵魂,这个灵魂植根于每一次技术设施升级、研发模式升级、人才岗位升级中并长久不衰。
长期以来,闲鱼技术团队,尤其是闲鱼客户端团队都在争议和挑战中持续进步,不停的磨练自身的技术能力,我们有理由相信,一个勇于面向自身革命的团队,一个敢做旧时代掘墓人,新时代的引领者的团队,必将乘鲲而行,带领组织奔赴星辰大海。
二、 终端行业的趋势变化
首先我想从几个角度去阐述一些趋势的变化。
终端设备的趋势变化【智能手机仍是未来三年关键】
移动互联网的这十年来,设备从PC迁移到智能手机,在这个过程中又衍生出了平板、智能TV、可穿戴设备等新的终端产品,可预见的未来XR设备也会层出不穷。Anyway,在近几年的终端设备趋势来看,目前还没有任何一个终端产品具备目前智能手机的三大特性-刚性需求、高频使用、生态开放,因此往后三年看,在终端的硬件布局上,智能手机依然是今天的优质流量入口【1】。
软件架构的趋势变化【跨端跨设备是业务刚需并持续演进】
从PC互联网到移动互联网转型的这么多年来看,随着技术的不断演进,传统意义上的前端和客户端持续在做相互的渗透,从最早的Native+Web的混合架构,再到ReactNative/Weex的以JSRuntime驱动Native组件渲染的高性能跨端架构,再到Flutter以自绘能力推进多端一致性和性能显著提升的新架构的尝试,技术侧我们一直在致力于进一步提升终端设备上的研发效能从而推动业务的高效迭代和创新。
另外随着小程序的在近些年作为各公司主要的用增入口或经营主阵地,进一步推动了跨端技术的演进和迭代。以极客邦组织的相应行业大会内容来看,行业所谓的大前端的技术趋势是长期存在的。它有几个典型的特点:上层以类前端技术作为研发的基础(JS/TS,同时Dart也是最早面向前端的设计的语言),下层通过抹平各操作系统的UI渲染和底层API的能力差异形成端侧容器,该类架构具备一次研发多端交付的特点,在具备高性能的前提下拥有较好的动态部署能力(Flutter在行业内也有很多开源动态化方案,可参考阿里的Kraken【2】和腾讯的MXFlutter【3】)。
组织协同的趋势变化【岗位融合,减少无效协同是敏捷组织的核心诉求】
技术趋势变化一定会影响组织协同方式的变化,混合架构带来的岗位的重新设定和组织架构的重新调整,在一定程度上你中有我,我中有你的不停相互影响着。以闲鱼为例,从最早的iOS/Android分端的岗位职能,到以业务视角分业务线不分端的岗位职能设计,背后既有独立业务线的快速交付的诉求,也是混合架构下释放的组织效能的体现。
今天为止,闲鱼在客户端岗位上崇尚的就是一人开发,独立高质量交付。当然这样的岗位趋势也不是个例,在国内各大厂的大前端组织内我们也能看到不但客户端之间在做岗位融合,前端和客户端也在做岗位融合。我们把视野再放到海外,从google、facebook、amazon的数据来看,硅谷的巨头们在人才结构上掌握Front-End(包含前端、客户端等与用户交互相关的岗位)的人才比例有30%或更多,这更加催生了端到端全栈的应用开发工程师的存在。组织在融合是表象,背后说明一个本质问题,敏捷组织的构建关键在于减少协同。多岗位协同带来的组织间的管理摩擦严重影响大厂的交付效率和创新效率。
基于以上的构想,作为闲鱼客户端的负责人,我认为未来的端侧研发的目的应该核心是服务与敏捷组织,激发公司的效能和创新的活力。我们的组织未来首先应该是岗位角色更少,岗位技术能多样,而对应的技术能力要为这个组织的角色服务,因此,所有的研发模式都要服务于如何让这件事更容易的发生。由于我们的技术主阵地依然是以智能手机为主的场景,如何有效的提升以智能手机为主、其他设备为辅的端侧交付效率就是我们核心要关注的事情。
接下篇:https://developer.aliyun.com/article/1225907?groupCode=idlefish