一个前端工程师到底需要掌握哪些技能?
作为一名前端想要晋升,需要什么条件?
现在在用 React,要不要也学学 Vue?
有必要学习 Node.js/Flutter/ 函数式吗?
这几个问题看似毫无关联,但是其实它们本质上都是同一个问题,这个问题就是“ 一个前端工程师到底需要掌握哪些技能 ?”
其实在行业里面,对前端工程师的能力模型有一个基本的认知,不同公司的定义可能有细微差别,但是它的内核是一致的。
这里我给出一张图,是我自己理解的前端工程师的技能模型。
为了方便你理解,我把这些技能具体放进前端工程师的不同级别里,你可以对照着找到一条符合自己实际情况的前端进阶之路。下面我就一部分一部分地详细讲讲前端技能树是如何发展的。
助理工程师
在这里小编建了一个前端学习交流扣扣群:132667127,我自己整理的最新的前端资料和高级开发教程,如果有想需要的,可以加群一起学习交流
首先来说说 助理前端工程师,对标的是阿里的 P4 级别 。它的要求是基本的编程能力。什么叫基本的编程能力呢?我认为就是熟练地用计算机编程语言表达任何逻辑的能力。一般来说,在大学学习过计算机专业的学生应该具备编程能力。
助理工程师的定义是“能够在辅助下完成工作”,因此不是所有公司都会招聘助理工程师的,因为严格来说,助理工程师不具备独立工作的能力,他的工作产出可能是负数。但是招聘助理工程师的公司,一般都是看重应聘人的潜力,期望能快速成长。
工程师
接下来我们说说 前端工程师,对标阿里 P5 级别 。它的要求是掌握基本的前端技能,这样说也许有点模糊,但是换个说法就很明白了,基本前端技能就是“综合运用 HTML、JavaScript、CSS 完成任何界面和交互需求”。这个“任何界面和交互需求”,看似要求很高,但是如果你写过前端就知道,这是任何前端的基本技能——大不了用图片呗。
其实这个级别的工程师,水平跨度非常大,界面写出来了,但是兼容性如何、代码可维护性如何、离了框架能不能写出来、语义表现分离能做到吗、开发过程中能不能做到有效沟通...... 还会有很多问题。而这些问题,决定了一个前端工程师的潜力,一些好一点的公司招聘这个级别的工程师,除了“基本的前端技能”之外,还会对我上面提到的这些问题有所要求。
关于助理前端工程师和前端工程师,能力方面主要的要求是 编程能力 ,知识方面的要求是一个“可用”的最小集合。
资深工程师
我们接着往下讲, 资深前端工程师,对标阿里 P6 级别 。到了这个阶段,我们可以看到图上开始出现不同的区块了,这意味着,对资深前端工程师的要求,也是多元化的。
我们用一句话来概括,资深前端工程师,要求开始关注并且解决项目中的问题。什么样的问题呢?可能是别人做不出来的技术难题,也可能是容易出错的代码,或者说无意义的重复劳动,或者是业务上想不出来合适的交互…… 等等。
其实对资深前端工程师的要求是很自由的,我上面的图中给出的仅仅是几个例子,比如组件化可以解决重复劳动问题和开发耦合问题;工具可以解决的问题有很多,生成代码的工具提高效率,代码检查工具提高质量;性能优化则会带来业务价值,这些都是资深前端工程师可以做的事情,并且只要把其中一两项做好,就可以达到资深前端工程师的水平。
再有就是 这个级别开始对架构能力和工程能力有所要求了 ,但还处于萌芽阶段,一些天赋好的同学可以凭感觉达到这个水平。
技术专家
下面说说 前端专家,对标阿里 P7 级别 。到了这个级别,我们从图上可以看到,要求又不一样了,比如组件变成了组件体系,工具变成了工具链和持续集成体系,性能优化变成了性能体系。这些东西变得不仅仅是称呼,还有工作的内容,这个级别跟资深工程师的主要区别是,从解决单点问题变成系统性方法,从服务自己变成服务团队,从一次性发挥变成持续性输出。
比如,资深工程师可能做一些组件,然后在项目里面用,自己的代码可维护性提升了,复用也做得更好了。但是前端专家要考虑制定组件规范推广到团队,还要做培训,考虑组件如何开发、管理和下线。资深工程师做性能,把自己的页面优化好了就可以了,但是前端专家就需要考虑采集数据、做报表和监控、总结 checklist、跟工具结合、定性能指标等等。
由于这个级别对架构能力、工程和软技能要求很高,所以算是比较难以跨越的。
高级技术专家
最后来说 高级前端专家,对标阿里的 P8 级别 。我们从图上看,这个级别分开的发展方向又聚合到了一起。高级前端专家做事的关键是审时度势,需要在前面讲的前端专家所掌握的各个领域里,组合出一套适合自己所在团队的方案。比如做企业内部系统的前端团队,可能对性能要求就没那么高,但电商前端团队因为运营活动频繁,就需要很好的组件体系,这里很难有一定的规则,全靠人来把握。
到这个级别,对工程能力的要求就很高了,而且即使不带人的高级前端专家,也必定涉及一些管理能力。
前端进阶的核心要素
讲完了各个级别的前端技能模型,我们回到最开始的问题“一个前端工程师到底需要掌握哪些技能”。
要回答这个问题,你要先根据自己的情况对号入座。你可以看到,在前端的技能模型里,对“知识”是没有任何硬性要求的,具体到各个公司的不同岗位,可能会有一些特殊要求,但市场是巨大的,所以大家可以不必对学什么知识不学什么知识感到那么焦虑。而且“前端知识”应该是一个垂直的模块,它不能直接帮助你进阶下一个更高的级别,但是它能提升你的潜力,使你未来能走得更远。
现在大部分同学会更为注重前端岗位的晋升,我认为前端进阶的核心要素,更多还是要看你的能力,尤其是在进阶前端高级工程师之路上,非常看中你的编程能力、架构能力和工程能力 。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69940844/viewspace-2650489/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/69940844/viewspace-2650489/
一个前端工程师到底需要掌握哪些技能?相关推荐
- 前端工程师到底有哪些晋升和发展方向选择?
近几年,前端行业的发展可以说是如日中天,这也意味着前端行业的就业前景变得更加广阔.市场对前端开发人才的需求不断增加,让很多人冲着web前端的高薪和前景而入行,为了让学习前端的人对前端行业有更深的了解, ...
- 一个前端工程师的基本修养
有人说互联网是前端工程师的舞台,先不论这个说法是否有些夸大其词,但前端工程师绝对撑起了互联网应用开发的"半壁江山".随着传统网站.手机应用.桌面应用.微信小程序等次第出现,需要前端 ...
- 作为一个前端工程师,我来说说红芯浏览器
作为一个前端工程师,我来说说红芯浏览器 我很愤慨!否则我也不会来写这些文字. 使用开源核心,完全没有问题,甚至是正确的选择. 所有的国产浏览器,包括360浏览器.QQ浏览器,全部都是采用的开源核心.这 ...
- 中高级前端工程师都需要熟悉的技能--前端缓存
前言 web缓存是高级前端工程师必修技能.是我们变成大牛过程中绕不开的知识点. 文章会尽量用通俗易懂的言语来细说web缓存的概念和用处. 本期文章的大纲是 什么是web缓存(前端缓存) 缓存可以解决什 ...
- 想成为一名合格的前端工程师,需要掌握哪些技能?
前端工程师已经成为目前互联网企业极具竞争力的人才,企业不断提升薪资水平为了招聘到优秀的Web前端开发工程师.因此,越来越多的人想要学习Web前端.那么呢?Web前端的学习路线是什么? 简单来说就是, ...
- 如何让前端工程师拥有永不过时的技能
常常听人吐槽说,前端技术更新太快.前端的细分太多,程序员太苦.很多东西学不过来.作为一名工作了9年的资深前端⼯程师,我也是深有感触.有时候,面对这种吐槽,我也是一笑而过.不过,面对这些吐槽,我看到的却 ...
- 一个前端工程师的docker之路
1. 布署软件的问题 # 如果想让软件运行起来要保证操作系统的设置,各种库和组件的安装都是正确的 热带鱼&冷水鱼 冷水鱼适应的水温在5-30度,而热带鱼只能适应22-30度水温,低于22度半小 ...
- 黄锦诚:前端工程师新手必读
在网站的发展史上,初期的网站建设根本不需要网页重构这个职位,WEB1.0时代的网页,只需要程序员,一堆堆的表格嵌套就完成,或者美工进行配合完成,先由美工负责设计好,再用一些自动化的软件拉伸几下,直接将 ...
- 面试前端岗位接连碰壁,企业到底需要哪种前端工程师?
提到前端工程师,很多人的第一反应都是:那个工资高,门槛低的职业.没错,也正因如此,越来越多的人开始投入前端岗位. 可是有些人似乎不太了解前端岗位为何如此高薪,认为自己看了些教程,读了几本书,会用HTM ...
最新文章
- 【杠精】切屏屏蔽和复制,怎么办--有方法解除移动切屏和复制网大限制
- 9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路...
- pytorch使用 torchvision 的 Transform 读取图片数据
- Docker 容器技术 — 容器存储
- 带有Java Pojo作为输入输出示例的AWS Lambda函数
- 东莞理工c语言作业,东莞理工学院 c语言复习题
- unity贪吃蛇c 语言代码,unity实现简单贪吃蛇游戏
- idea jdbc封装_IDEA 中 MyBatis还可以这么玩!!!
- Java中什么是句柄
- yii2 找到根目录的绝对路径
- 绕过tp路由器管理密码_TP-Link路由器登录密码怎么重置【详细介绍】
- 【修复收藏功能、更新登录接口】知识付费小程序、博客小程序、完整版开源源码、资源变现小程序
- Java实现图表趋势图的展现
- python利用try_except打印错误信息,并继续执行
- css span文字下划线
- 【vue2】axios请求与axios拦截器的使用详解
- Blender几何节点新手教学
- 关于创建的虚拟机mac 无法调整分辨率
- 如何下载宝坻区卫星地图高清版大图
- mysql修改data文件位置