前段时间社区上大肆讨论「前端已死」,各种唱衰前端的言论此起彼伏,真是闻者落泪,听者伤心。
最近又听说某大厂取消大前端部门,前端被拆分到各个业务组。很多前端高 P 或离职,或被裁,或转后端。
这是前端的落日?
今天就瞎聊聊,聊到哪算哪。
前端技术发展趋于稳定
过去前端最被开发者诟病的是发展太快了,三天不学前端就跟不上了。
在我个人的前端经历中,技术栈从 Jquery 到 Angular,再到 React,前端技术快速切换,同时配套的前端研发体系也在不断推倒重建。
仅仅 React,从 V14 到 V15,再到 V16,一路快速迭代,每一个版本都有质的飞跃。尤其是 V16.8 hooks 出来之后,各种生态工具又得重建。
但最近几年,前端技术发展似乎慢了下来,React 16.8 版本还是 19 年发布的,距离现在已经四年多时间了,在这四年多时间内,React 虽然发布了 V17、V18,但并没有什么质的提升。对于我而言,只要能用 Hooks,16/17/18 哪个版本无所谓。
前端生态趋于稳定,是好事还是坏事?
我以前很羡慕 JAVA 开发同学,学习一套技术体系可以用到老。现在似乎前端也可以这样了,我认为这是一件非常好的事情,是前端成熟的标志。
只有前端技术体系不再发展,前端工程师才能 100% 精力投入在产品建设上。不用总是分精力去学习新技术,新轮子,最大程度复用过去的学习成果和基础设施。
比如现在有个需求是计算 43✖️5 的结果,我们会使用现有的方法,计算出结果,而不是要去思考有没有更好的计算方法。
本质上是我们的计算方法已经非常成熟稳定了,我们只要专注需求本身。前端什么时候稳定到这个程度,就皆大欢喜了。
公司中前端部门的发展
再聊聊一个公司中,前端团队定位的问题。
- 公司发展初期,产品建设高速期,前端的首要目标是建设产品,这时候前端通常在业务部门中,大家全力做产品。
- 随着公司发展,产品越来越多,各个业务部门的前端交流少,使用的技术五花八门,重复造轮子。这时候公司通常会搞一个大前端部门,使其研制出来一套在公司内成熟的前端解决方案,统一各种基建,提高人均效能。
- 当前端解决方案统一到一定程度之后,大前端部门的使命就结束了,这时候前端又会被拆分到业务部门中。
这里说说阿里大前端部门拆分,我认为原因有两个:
- 阿里前端基建相对已经成熟,拆分之后对前端研发效能影响不大。
- 公司不挣钱,不吃大锅饭了。以前是各个业务部门一起挣钱,一起养着大前端团队。现在公司不赚钱了,要改革,要求各个业务线自己挣钱自己花,所以前端开发也要回归到业务团队中。
最近并不只是「前端已死」了,我认为各个工种都在面临裁员潮,原罪是公司不赚钱了。在发展阶段啥问题都没有,一旦发展停滞,那什么都是问题,一个一个开刀。
对于个体来讲,如果想在这个公司发展,就要尽力帮助公司成长。另外就是居安思危,提升个人竞争力,只有跑的比别人快,才能在逆风中活下来,才能比别人更容易找到工作。
这里不得不吐槽下,很多人乐意躺平,你说要学习,要往前走一步,他会喷你卷,喷你带坏了风气,喷你是资本主义的走狗。大无语~
一个前端创业机会
之前在蚂蚁,前端基建非常完善,开发者真正的只用关心业务,不用去思考技术的东西。在公司内部基本上做到了只用关心 43✖️5 这个需求,不用考虑该用哪种计算方法。
从蚂蚁离开后,非常怀念蚂蚁的前端解决方案,但在社区上,并没有类似的收费或者免费方案。据我所知,各个大公司,都会有自己的前端解决方案。但中小公司,基本上没有能力去自建一套类似解决方案。
阿里的后端解决方案,有商业化的产品「云效」。
蚂蚁的后端解决方案,有商业化的产品「SOFAStack」。
微软的后端解决方案,有商业化的产品「Azure DevOps」。
为什么后端有,前端没有呢?
我认为是后端技术栈稳定,基于这一套技术栈的生态也就稳定,发展多年下来势必会有成熟的解决方案。大公司产出商业化解决方案,给中小公司用。
前端技术栈过去发展快,生态不稳定,大公司内部的解决方案也是最近一两年才出来,所以前端目前还没有类似的解决方案。
所以我认为前端解决方案,是未来一个确定性的机会。
这个解决方案覆盖前端研发的整个生命流程,包括不限于:
- 产品:埋点、数据分析等等
- 开发:迭代协作、脚手架、组件库、逻辑库、联调、国际化、跨端等等
- 上线:灰度、回滚、CDN、监控告警、性能、SEO、SSR、SSG、离线包、安全等等
希望未来前端解决方案,像乘法解决方案一样,能成为行业统一规范,让开发者真正的只用关心业务,不用关心技术。
前端的未来
说几点自己的思考:
- 前端技术趋于稳定,开始有商业化的前端解决方案出来。
- 前端不会消失,但门槛会进一步降低,低端前端饱和。
- 高级前端依旧紧缺,因为高级前端并不是只是看前端技能,而是综合考虑技术能力、业务能力、沟通能力、情商、职业素养、工作经验等等,这个过去现在未来都不会变。
- 前端工程师可能会变成用户体验工程师,后端考虑存储并发等,前端考虑用户体验,为整体用户体验负责。
- 前端会进一步蚕食桌面端开发、移动端开发的生存空间。
- AI 可能会改变前端研发模式。
总结
也许前端技术栈稳定之后,才是真正的开始。
文中所有观点未经论证,纯属 YY,欢迎理性讨论。
关于作者
砖家,brickspert
前蚂蚁集团前端技术专家
开源库 ahooks 作者,10k+ star ⭐️
开源库 antd mobile 前负责人,10k+ star ⭐️