前端从业分布与技术关注的一点看法

这篇文章发布于 2020年02月10日,星期一,3:55 下午,归类于 散文随笔。 阅读 20832 次, 今日 7 次

 

占位图

web前端这个职业从出现到现在20年的历史应该有了,随着这么多年前端发展和积累,累积百万前端从业开发者绝对有的,当下至少有50万前端开发从业者。

从我筛选简历到最终录取大概百分之一的录取率,综合我们厂算是小厂来看,传统互联网大厂占比肯定远小于百分之一。

因此绝大多数的前端全部分布在众多中小互联网企业中,还有一部分就职于大型的传统企业中,例如出版社、电视台这样的媒体机构,需要前端开发web载体的产品传播信息,又或者保险或者银行等金融公司等。

以上就是前端从业人员的分布现状。

——

有一点相信大家都没有争议的,那就是不同群体的关注点是不一样的。

在技术领域也是如此,互联网大厂的关注点和产能点,和小公司、传统企业的技术关注点也应该是不一样的。

但是,可惜,现状似乎却不是如此。

通常业界有话语权有影响力的那波人都在大厂,加上有大厂背景加持,话语权和权威性就更大,很容易带动业界的热点技术方向。

但是,大厂的方向可不一定小厂的方向啊!

去年业界谈的非常多的就是中台能力,什么“小前端,大中台”,这些东西对于大厂非常重要,可以有效减少不必要的内耗,提高管理效率和资源整合能力,可以为集团的技术生产提高更高的赋能。

但是这玩意对于小厂,或者这么说吧,整个公司前端不超过10人的公司,投资与收益比是小于1的,是不划算的,因为不适合。但是有些小公司的CTO,可能因为是后端出身的,认识和判断并不准确,为了提升公司技术效率,向阿里学习,啪啪啪搞一出事情,最后下面的人怨声载道,最终的收益却如坟场鬼火,黯淡无光,然后维护不下去,留下个巨大的烂摊子。

时间线再往前,Vue/React很火,还有对应的UI组件库,但是,这些JS框架真的只有在中后台项目才能体现其优点,数据交互量大,增删改查频繁,对页面性能要求不高,对视觉要求也不高,功能至上,反正自己人用。

对于很多C侧的网站,其页面呈现是如此的静态,交互是如此地简单,为什么要去使用Vue/React呢,面向用户侧的产品,语义化可是很重要的,用户体验可是很重要的,重要的是用户,而不是自己的开发时间和开发体验。页面内容直出不香吗?jQuery难道不香吗,原生JS不香吗?又简单又快速,无论是加载体验还是交互体验都好,这难道不是最重要的吗?

亲爱的大家,大厂吹起的那些流行之风,我们关注肯定是要关注的,但是真的就在自己团队里,项目里用,那可要斟酌一番了。不能说这个是新技术,就哗啦啦把以前的一通实现全部推翻,重构,重来,正好让我练练新技术,缓解自己焦虑,满足开发者天生想要使用新技术的冲动。

瞎折腾。

我认为作为一个职业的前端开发,评估在公司这样一个商业机构里是否应用某一个技术,不应该是这个技术是否流行,不应该是这个技术能否让我开发爽,也不是是否可以炫耀自己独家掌握的技术,而应该是这个技术是不是适合我们产品,对用户和公司带来的价值有多大,对于同事间协作新人加入后的维护是否方便等。

上层高高在上,说的那些话,鼓吹的那些东西都是他们视野里需要的。但是,99%的前端都是散布在全中国大大小小的企业中,你们所有关注的,真不是那些高大上的东西,脚踏实地,使用简单传统的技术实现对用户友好,对业务有帮助的产品才是真正的王道,这句话对于这些企业的技术leader最受用。

不过话又说回来,下面前端开发人员的技术焦虑怎么办?想要应用新技术的冲动哪里释放?找点内部项目做啊,帮助公司做点效率提升的工具和产品之类的,顺便可以验证这个新技术合不合适,坑多不多。

最后总结下,流行之风是顶部大厂吹起来的,但是顶部的那一小撮人并不能代表整个行业,很多人会误以为整个行业都是这样,非也非也,合适的才是最好的,总而言之,所谓的热门技术谨慎用在对外的产品中。

(完)

分享到:

留下回复,目前14 条评论

  1. robin说道:

    张老师的总结很到位了,之前参加各种分享会,慌得很,因为分享的内容听过,没用过,也没机会用到,后面索性不去了,老老实实研究基础

  2. GC说道:

    “所谓的热门技术谨慎用在对外的产品中.” 非常中肯的话!

  3. vbyzc说道:

    非常棒的总结!!!

  4. coco说道:

    小白,我想说我会用比较新的技术,理由是小厂的前端基本就是全栈,前后端都做的。我就是PHP,python,java都用,react,vue领导说好,面试要会所以都会。第二是我是想用es6,es8语法糖。。比如x?.val写法就可以代替一堆判断。。。。

  5. 匿名用户说道:

    可现实是,现在大部分项目都是后端主导,他们不想,不能也不管前端性能怎么样,用什么技术,他们只要产出的页面是那样的就可以了,而且现在用户电脑和宽带都不错,对于一点点性能的提升,也感知不出来。那前端何不用简单的方法来写页面。

  6. Sivan说道:

    好的前端要扛得住诱惑,耐得住寂寞。

  7. 梅利奥猪猪说道:

    但我还是觉得,如果只是原生js玩的6,jq也十分熟练,然后vue和react学的并不深入,会有公司企业要嘛?

  8. 蔡芳芳说道:

    您好,我是InfoQ技术编辑蔡芳芳,您这篇文章写的非常到位!请问可以授权给前端之巅公众号和InfoQ网站转载吗?

  9. Emiya0306说道:

    从我个人的职业生涯来看,我也提出一些我的看法~ 纯属探讨
    关于C侧网站为何需要去使用vue/react的问题。让我想到了当年在微博上,某阿当的怼天怼地怼业界的新框架,新技术狂潮需返璞归真的那段烽火岁月。jQuery不香吗?页面直出不好吗?
    那么问题来了,一个纯粹的、用完即弃静态活动页面确实一个HTML直出就够了,甚至可能连jQuery都用不到,亦或者说直接用设计稿导出就完事儿了。但稍稍复杂点儿的应用,如果有可能需要进行迭代,我的首选项为什么一定是jQuery,而不是Vue/React呢?
    让我们回想一下jQuery/Vue/React究竟是什么?
    jQuery——”快速、轻便并且特能丰富的Javascript库”
    React——”一个用来构建UI的JavaScript库”
    Vue——”用于构建用户界面的渐进式框架”
    OK,这里我们发现了:这三个东西都旨在于让开发者,运用JavaScript来创建、并控制页面的UI。所以说到底,这三者其实在JavaScript界里面地位是一样的。从功能上来讲,他们都平等地属于开发者,属于开发者的一个基础工具。所以,你让我写页面运用jQuery,我说我可以。但我为什么不能使用一个其他工具库、甚至都不是Zepto,就偏偏一定要是jQuery呢?
    如果说jQuery渲染一个html很快,那Vue渲染、React渲染也很快呀~ 5ms甚至1ms的渲染速度的差异,对于一个简单的Web App应用,我想应该也不慢吧。
    技术选型究竟是jQuery和React/Vue,同样也不能决定着用户的交互体验。

    对于React/Vue作为一个Javascript UI工具库而言,其本身也在朝着轻量级的方向发展,比如不断的在缩减自己的核心代码,最典型的例子就是Vue在3.0推出按需引入核心功能。既然他们在不断努力的提身他们自己,目的是为了让我们去掉jQuery来作为前端渲染的首选项,里面的道理能说出千千万条,归根揭底还是为了让我们开发写更少的代码、维护更有语义的App、让程序变得更容易迭代、能更快速的满足我们千变万化的需求。
    而我为什么赞成用React/Vue,而尽量不使用jQuery,其实道理就是上面所说的,应对需求的多元化。我觉得已经很少有前端,在开发一个网站的时候,会轻描淡写的说,就用jq手写一套渲染,”大爷复制粘贴拿起来就是干!”。React/Vue是两个面向产品未来的UI工具库,并不是一个炫技的东西。而且我相信,现在会一个Vue,会一个React已经算不上炫技了,只能顶多算一个基础。一个聪明的开发者,不仅仅要懂得基础,更要懂得如何写更少的代码,做更多的事情。(就几毫秒的渲染性能损耗,对于简单页面来讲根本不算什么了;外加用相同的逻辑,vue和react写出来难看的代码,用jquery写出来肯定更可怕) 我相信jQuery其实并不具备这么多痛点,所以才诞生了渐进式UI框架,所以我们才会需要替换掉它。

    所以我觉得不要给React和Vue打上一个有色眼镜的框架来看,而是把他们作为一个必备的工具库来看待,会更有利于我们前端业界的技术发展。jQuery是很香,不过React和Vue比想象中的更香。

    (深夜作文,即兴思绪有点乱,不过大概就是这么个观点,欢迎探讨)

    • 张 鑫旭说道:

      C端不合适,C端要为用户负责;
      开发是爽,但是体验会有影响,基于原生语法的构建有很多用户看不到的体验增强;对于web产品,直出的产品的体验一定是最好的。
      组件构建与React/Vue没有任何关系,Native也可以,也很简单,也支持基于数据的渲染。
      如果可以推荐Zepto,如果更可以,更推荐Native JS开发。
      C端更推荐mix混合模式开发,局部复杂交互区域面向数据的开发。
      jQuery与渲染没有任何关系,jQuery不参与渲染。
      文章好好读一读,有些地方意思意会完全不对,我不是某阿当,不要受他文章影响先入为主,我文章重点也不是讨论框架啥的,我是原生主义无框架派。
      React/Vue我是推荐的,中后台开发力荐,如果C侧产品功能优先,页面数据交互很复杂,用户体验要求不高,React/Vue自然就很合适。
      想要用户体验好,牺牲开发体验是无可避免的,篇幅原因,这个不展开。
      技术开发总是习惯站在技术角度评价某个东西好坏,可以理解,但世界是复杂的,Leader的视角和一线员工需要有差异,本文主要写给技术leader们看的。

      • Juler说道:

        看了文章,很认同技术选型的理念。只是有一处不明白:为什么React/Vue开发C端会影响用户体验呢,不是很理解,望赐教。

      • 前端菜鸟说道:

        旭哥说得很对,这文章是给那些局外人看的(局外人:没学过技术的开发经理;领导,学了一点点技术的开发以为懂的经理;领导).看过几篇技术鸡汤文章,就以为前端框架可以提高官网建设类型项目的制作进度,C端理解就是官网建设类型的项目.但好像有些人并没接触到是公司产品接到官网建设的项目的标,页面注重SEO 与用户体验,交互效果,这种用框架更加是累赘,框架写丰富的交互效果,你细品,JQ直出对兼容支持不是更友好!

    • eee说道:

      头部大的互联网公司技术宣传能力比较强,容易被跟风。但很多行业(电信,电力,银行),政府软件服务商,各种中小软件企业,都是快速做项目,同一个功能前后端同一个人开发,一个公司只有少部分喜欢新技术,如果前端因为少数人引入太多新技术,例如vue,react,后面人员接手维护,会带来很大的维护成本。前两天在抖音看到一个日本前端技术人员,介绍日本百分80%的人员使用jquery,20%使用react vue 之类。最重要的是需要根据整体人员素质,项目特点选择最合适的。

    • oatw说道:

      没必要只站在前端的角度来权衡。我喜欢用Rails,大部分项目以后端渲染为主,即使是后台管理项目,也可以在用jq的情况下保持良好的可维护性和扩展性,组件化方案也一样可实施。react vue之类的也会用,大部分情况下只是在前后分离的时候用,毕竟开发效率不如Rails那套来的高。所以对我而言,vue react之类的永远不会是最先考虑的选择。因为单兵作战能力更重要。