首先可以明确的是每个技术都有一定的时间累积,那么在这时间的累积下面,不同的人技术水平肯定不一样,那么对于大多数前端来说前端技术能力究竟差在哪里呢?
下面对每个程序员进行一个归类的总结初级程序员仅能完成简单模块和项目的开发工作,难以胜任复杂模块的开发。通常是入行不久,1 年及以下工作经验的同学。能力要求熟悉前端基础知识如HTML、JS、CSS 。
[if !supportLists]00001. [endif]能够使用一门MVVM 框架进行简单的业务开发。
[if !supportLists]00002. [endif]遇到复杂的组件和模块,会找现有的轮子使用。
[if !supportLists]00003. [endif]会使用百度、google 等检索工具搜索问题。
中级程序员(阿里p5)在必要的辅导或标准流程支持下,能独立负责一个子模块或者一个项目的具体任务,对及时性和准确性负责。通常是2-3 年工作经验的同学。能力要求除了前端基础知识外,熟悉计算机、网络等专业基础知识。
[if !supportLists]00001. [endif]熟练掌握工作中使用的技术栈开发业务。(除了MVVM 框架外,还能了解 webpack 的配置)。
[if !supportLists]00002. [endif]能了解一个需求从开发-上线整个生命周期,并对各个环节负责。
[if !supportLists]00003. [endif]具备基本的逻辑分析、问题分解、归纳总结等能力。
[if !supportLists]00004. [endif]了解基本的数据结构和算法,写代码较熟练。
[if !supportLists]00005. [endif]知道从靠谱的渠道去查找问题,在找不到合适轮子的时候,会造一些简单的轮子辅助业务开发。
高级程序员(阿里p6)具有独挡一面的能力,能够高质量完成工作,能把握一个系统/团队的整体实现,在推行过程中能提炼新的方法或方案,或对现有方案提出改进建议并被证明有效。通常是 3 年+ 工作经验的同学。能力要求具有独挡一面的能力,能高质量的完成模块级的工作。