前端开发是创建WEB页面或APP等前端界面呈现给用户的过程,通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。在2021年web前端还好找工作吗?下面我们就为大家介绍一下吧!
一、2021年,web前端还好找工作吗?
简短回答是不好找。
宏观上来说,2020年找工作确实比5年前是难了很多,很多公司现在只招技术专家级别,连高级都不怎么招,门槛高了非常多。很多人以为是这波疫情导致很多公司倒闭所导致的,但我的判断是疫情仅仅是短期的减少需求量的因素,而主要因素是国内前端领域正在进入拼智力的时代。
近三年前端技术渐渐趋于稳定,初、中级前端工程师的技术栈和技术水平也趋于同质化,于是竞争进入白热化阶段。拼周末时间学习新技术已经渐渐不再像几年前一 样有助于赢得竞争了。同时,由于大量小公司的需求仅仅是简单的网站页面或APP ,甚至只做简单的小程序页面,用现有的组件化技术已经能很简单就能满足需求了;工程上也由于宽带和手机网速的加快,以吸Webpack配置(甚至Vite/Snowpack )的成熟,已经没有太多需要前端I程师来措建复杂的构建系统了。在这样的生态位上,自然就非常难以进化。
于是自然便出现了我常说的[技术断层」的趋势 ,也就是小公司业务太简单,从而限制了眼界和思考,于是技术就难以进一步上升。而技术无法进一步提升,也导致了无法进入大公司,便没办法接触复杂业务场景。这里就出现了死循环,上升出现了停滞。
当然,我上面说的都是宏观上的情况,是我观察到的大部分人的现象,要注意宏观不能用于判断微观个体。
那怎么办?
这就需要我最开始提到的:拼智力。这里智力并不是指天生的智商,而是指动脑筋思考。
在把基础知识学扎实编码能力练扎实(多刷题)之后,要开始多思考如何去抽象业务。我这篇文章里有几个例子:别陷入996的泥潭:要降维打击,而不是拼时间-知乎同时,也要拓宽视野,把所看到的名词都去搞明白到底是什么意思,比如各类编程思维(函数式编程、流式编程)、大家都在聊的Faas/Serverless.微前端等,甚至是React Native/flutter都去搞明白这些技术的工作原理以及最关键的设计思想,不要仅仅停留在「听过」、「用过」 .拓宽视野能帮助你获得更多的设计思想,有助于你获得抽象业务和做架构设计的灵感。
也要建立影响力、拓展人脉。影响力包括在公司内的和业界的,在公司内有良好的影响力能有助于推动技术项目落地,也会有更多人和机会来交流各种方案,进-步提高影响力和技术经验,形成正向循环。在业界也基本类似,做开源项目或找工作,如果在业界有影响力都能有不少的帮助。有不少公司更愿意录取有业界影响力的人,愿意给予更高的offer.在业界有影响力后,还有助于认识其他有影响力的人,进入小圈子,进而能与更多高手-起交流,获得知识,换工作时也更方便。建立影响力的途径就是对外进行输出,多做分享(这也会反过来逼自己去学习东西) , 多写文章、写回答,认真对待。
国内前端界进入这个拼智力的时代我判断是必然的且合理的,正如@徐叔叔所讲「研发应该就是-种智力密集型的活动,不应当放弃思考和抽象,跟人去拼体力」, 国内前端界从量变(拼人数、时间)到质变,进入了拼智力的时代,这助于国内前端行业的更好更良性地发展。
但是为什么现在一堆大厂喊着招聘难呢?
那是因为候选人技术和招聘者的要求出现了明显的脱钩。
我们现在把前端工程师的时代分为三种:史前时代、1.0时代、2.0时代。
有一个非常明显的参考,就是看那些「技术视频」网站不同时期的视频类型。
史前时代史前时代的前端停留在纯切图仔层面,是后端的附庸,后端不愿意干的活,比如切图、写模板、调样式、还原设计稿这种重复劳动力工作交给前端,这个时候前端靠的是还原设计稿的能力、浏览器兼容性的知识等等,你要真说有啥技术含量,没有,这也是很长一段时间「前端」不被认为是程序员的原因。这个时候的视频以JQuery 、Bootstrap、切图为主。
1.0时代
这个时候随着移动互联网的发展和Node的兴起,前端进入了野蛮生长的时代,三大框架横空出世,各种构建工具打包工具转译工具检查I具你方唱罢我方登场。
这个时期也是所有人都感觉前端突然变复杂了,所以能用好个框架+全家桶成为了前端的标配,其中Vue以极低的入门门槛和友好的文档迅速占领了大量市场,但是注意,这个时候除了少数进行赋能(组件库开发、构建I具优化、前端监控系统支持等等)的前端从事一些有点难度的工作以外,绝大多数前端依然在糊页面,只不过用的工具更复杂了,前后端分离后相对更加自主了。
这个时候前端视频网站被大量的教你用Vue开发QQ音乐、饿了么、美团等等的课程霸占,所以很长-段时间内面试官收到的简历大量都是饿了么、QQ音乐的项目(结果就是看到关键字直接扔垃圾桶)。
2.0时代
到现在,前端3经进入了2.0时代,算是跟正儿八经的软件工程师接轨了,原因有两个主要方面:
1. C端互联网红利基本消失,大量巨头企业开始转向B端,比如阿里/腾讯云、钉钉、企业微信、飞书,面向企业的工具类项目创造了大量复杂的新需求。
2.经济形势继续急转直下,大量企业倒闭,前端(何止是前端、何止是程序员)处在一一个人员(注意不是人才)过剩的情况,没有突出能力的前端很难被企业招聘。
2.0的前端几乎进入了以下几个方向:
1.前端赋能领域,比如组件库的建设( @偏右悄悄地的Antd)、定制化构建 工具( @城池他们的Dawn)、可视化库( @沈毅的Echarts、@Kener-林峰 的Antv )、Node相关的框架、serverless等等( @天猪他们的egg.js、@Starkwang 的小程序serverless )等等。
2.杂前端产品的研发,比如文档编辑器领域(语雀、钉钉文档、 腾讯文档)、设计编辑器领域(@doodlewind的稿定设计)、WebIDE ( @继风的webIDE )、lowcode平台研发 (@ZHOUXUAN YANG她们的云凤蝶)等等。
按照民工叔叔@徐飞的说法第一种赋能领域属于大量的赫鲁晓夫楼组成的小区,难点是规模大,但是赫鲁晓夫楼突出一一个简单无脑,有很大的通用性,所以需要底层I具赋能珈快研发。
第二种属于单座摩天大楼,难点在于本身的工程复杂度就很高,业务通用性差,需要专[ ]定制。
比如现在居然出现了数据可视化的课,口号也是「打造差异化竞争力」, 也侧面说明了1.0前端造不具备竞争力了。