前端开发都需要哪些能力?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端开发都需要哪些能力?相关的知识,希望对你有一定的参考价值。

1、三大基础技能,js、css、html这三项技能是前端工程师能力中的基础,任何框架、工具、库都是基于这三者只上的。这是硬实力,决定了整个前端生涯能够达到的高度,以及在后面的技术栈拓展中的顺畅程度和能够达到的效果。
2、工程能力要有,前端工程师首先是个工程师,做项目就是在做工程,所以懂得如何把一个项目的前端部分的工程运行起来,是另一项必备技能。
grunt、gulp、webpack都是著名的工程类工具,这些工具只要能熟练使用,就基本符合工程能力的要求。但是如果想要拿到更高一个层次的offer,理解工作原理必不可少。这些工具的根本作用,就是对资源的处理,包括代码的压缩打包、本地服务器的架设等。
3、调试能力要必备,如果还在用alert、console来调试程序定位问题,那么你还不符合要求。
学习chrome调试工具的使用,Elements查看元素、Network查看网络请求、Sources查看代码,设置断点定位问题、call stack查看调用栈。这个能力很少有人提到,但是掌握这些技能,不仅能在面试时加分,更重要的是在日后实际的项目中发挥的作用。
4、团队协作能力指的就是git,在项目开发中必不可少,熟练使用git,掌握常用的命令,学会解决冲突。
5、热门框架的使用vue、react是当前两个最热门的框架,能够熟练使用是基本要求,如果你想在众多求职者中脱颖而出,你还需要理解原理,还是那句话,你跟offer的差距就是使用与实现的差距。试着理解virtual dom的原理,响应式的原理,双向数据绑定的原理。
6、项目经验要可靠,不是“仿了几个页面”,而是“项目”的经验,是经历过整个项目从0到1全过程的经验,在这个过程中遇到了什么坑,如何解决的,解决的过程中是如何思考的。
参考技术A Web前端:

1、精通HTML,能够书写语义合理,结构清晰,易维护的HTML结构;

2、精通CSS,能够还原视觉设计,并兼容业界承认的主流浏览器;

3、熟悉javascript,了解ECMAScript基础内容,掌握1到2种js框架,如JQuery;

4、对常见的浏览器兼容问题有清晰的理解,并有可靠的解决方案;

5、对性能有一定的要求,了解yahoo的性能优化建议,并可以在项目中有效实施;

Web后端:

1、精通jsp,servlet,javabean,JMS,EJB,Jdbc,Flex开发,或者对相关的工具、类库以及框架非常熟悉,如Velocity,Spring,Hibernate,iBatis,OSGI等,对Web开发的模式有较深的理解;

2、练使用oracle、sqlserver、mysql等常用的数据库系统,对数据库有较强的设计能力;

3、熟悉maven项目配置管理工具,熟悉tomcat、jboss等应用服务器,同时对在高并发处理情况下的负载调优有相关经验者优先考虑;

4、精通面向对象分析和设计技术,包括设计模式、UML建模等;

5、熟悉网络编程,具有设计和开发对外API接口经验和能力,同时具备跨平台的API规范设计以及API高效调用设计能力

作为前端项目负责人需要具备哪些能力

因为业务线比较多,所以公司内部每一个项目当中都是一个中级开发在负责项目。所以也是给与一定培训和指导。以下内容全是从个人角度的理解去给与一些参照。

图片

负责人能力.png

技术能力

基本的日常开发需求。前端技术体系。

图片

image.png

快速掌握和上手新技术的能力

每一个负责人都有可能面对某个系统需要用到其他的新技术,或者以前没有接触过的技术,这里需要负责人有着自己的学习方法和学习能力,可以在短时间内掌握一门技术,快速进入开发,并在开发的过程当中继续积累和提高新技术

指导和帮助初级同学解决问题

这个环节不能缺失,这里就要求技术全面和思想指导。当在帮助初级同学解决问题的时候,不是仅仅只是在给他们解决问题,更重要的一点是双方之间在进行技术沟通和思路解决方案。对大家都有提升。

  • 提升负责人的技术全面性,和沟通能力,问题解决能力

  • 提升初级同学的知识面,了解其他人对于这个问题的思考

规划能力

规划能力,在于负责人对于工作的计划规划,是不是胸有成竹。

图片

image.png

技术体系规划

选型考虑

  • 是否可以满足业务需求

  • 当前团队熟系技术栈的难易程度

  • 当前技术体系搭配相关的技术体系

  • 亲自去玩一玩,看看

相关技术文档的输出

在调研新技术的时候,形成技术文档输出的习惯,可以将一些坑或者使用方法,记录下来

人力资源规划

人力梯度规划

根据项目的体量,复杂度,需要规划具体的高中初级几人。

  • 复杂度 决定高中级人数

  • 体量决定初级人数

人力数量安排

肯定存在重复性劳动动作,这部分具体的数量安排。

任务划分规划

  • 任务难易程度 划分不同的开发人员

  • 可复用性考虑

  • 任务时间安排

前面两个决定具体的时间划分。

风险规划

  • 任务完成量

  • 任务完成度

风险分为两种:任务完成了多少,任务完成的怎么样。
开发完成任务完成是两回事情。
图片

突发情况应对能力

其实正常情况下不会出现这种情况,但是在人力条件下,可能出现这种情况。借助现有的资源,解决相对的问题。

业务能力

前端同学其实对于业务能力因为各种原因,普遍没有后端了解的多。

图片

image.png

梳理业务流程

利用泳道图或者流程图去梳理业务流程

图片

系统功能泳道图.png

业务关键字段和数据在我们系统上的体现

关键字段和数据是基于业务逻辑流程梳理之后,知道对接接口的时候,一些关键数据的重要意义。

有效的参与业务评审,考虑业务和技术实现的结合

不是将业务评审当成是一个过场,需要有自己的思考,以及梳理,别人的讲解始终都是别人的,如果自己不了解,是无法在开发过程中了解业务实现是否有问题。

具体如何参与业务评审,后面会有其他的培训。

协作能力

协作能力,分为两个部分。一个是项目团队,一个是部门团队。

图片

image.png

和项目团队

开发维度

这里的几个部分后面会有专门的session大家一起探讨。

  • 产品评审

  • 后端联调

  • 交付测试验收

前端小团队

  • 任务分配

  • 任务check

  • 任务风险

合理分配,及时check,预知风险

管理维度

  • 项目经理 沟通 任务进度

  • 汇报风险 & 以及应对

  • 周报工作体现

总结

  • 汇报人:项目经理

  • 汇报内容:进度和风向

  • 汇报方式:周报

和部门团队

因为在我们公司,前端部门是一种虚线的状态,大家可能分步在不同的项目组里面,但是前端还是要从整体技术方向上去做统一的提升和信息共享。

  • 统一技术栈

  • 配置化开发协作

  • 信息共享,插件或者业务组件沉淀,节省其他项目成本

前端工具化发展:bitsun-inc.yuque.com/vghmle/yuf2…

组件沉淀

图片

image.png

业务沉淀

图片

image.png

沟通能力

沟通能力可以体现一个人的思维方式,以及是不是有着自己的表达方式。
图片

表达方式

表达方式决定是不是 在有效沟通,有的时候可能大家沟通了半天还不是在讲一个东西。

谈任何问题的时候,不要直接上来讲问题,将上下文同步清除,然后在进行沟通。

为什么有的时候在讲一些问题的时候,讲了半天没有重点,听得稀里糊涂,就是因为自己本身就没有将问题梳理好,就直接拿出来讲。

任何事情:都是会有输入 -》过程 -》输出

那我们将输入,输出讲清楚,中间哪个过程出了问题,就直接将前因后果的上下文自己理清楚,然后清楚的表达出来。

表达对象重点

  • 项目经理,领导汇报工作:重点是进度和风险,细节不必特别强调。

  • 部门人员:主要在于共享信息,和人力资源风险。

  • 团队人员:和内部团队人员沟通则是要,大的方向同步好,细节一定不能放过。因为着重于技术的实现。

输入输出

我们在和不同的人沟通的输入不同,输出也不同。

  • 输出指的是:我们想要达到的目的。

  • 输入指的是:我们需要传到给对方的信息。

判断能力

图片

image.png

判断能力决定于,一个人是否已经可以全局把控项目。判断能力在于有底气在项目当中对于事项进行判断和决策。

框架能力

框架能力决定一个人是否可以处理项目当中非业务逻辑的处理能力。
图片

分析问题,解决问题能力

这一个东西极为重要,这是一个人的综合能力的体现。

技术广度,深度,逻辑分析能力【一部分结构化思维】的体现。

架构能力

图片

image.png

心理能力

图片

image.png

关于心理能力,这里没有和上面放在一起,但是也提一下,因为团队当中之前有同学和我反映过一些心理活动。

场景:可能我们在计划任务的时候,一切都计划好了,但是最终的结果还是延期了。可能有各方面的原因。团队人不原因加班,联调没有很好的完成,前期技术方案没有很好的实现,或者有问题。然后感觉自己是不是不行。产生了自我的认知否定。

我们不能决定所有的事情,事情也不一定会按照我们设想的去发展。我们唯一能做的就是,把我们需要做的事情做好,至于结果可能有所偏离,那我们继续努力就好。不必针对我们自身,产生不好的情绪。

尽人事,知天命。

所以我们更注重是做好自己的事情,遇到的情绪有自己的情绪处理方式

以上是关于前端开发都需要哪些能力?的主要内容,如果未能解决你的问题,请参考以下文章

除了 Vue,前端开发还需掌握哪些核心能力?

Vue 3.0 来了!不断更迭的技术浪潮中,前端开发必备哪些核心能力?

web前端培训都有哪些课程

web前端开发需要用到的工具都有哪些

前端开发都需要哪些工具?

web前端开发需要哪些技能?