之前有人问过我,"到底什么样才算中高级前端,需要具备哪些技能才算中高级?"他的本意是让我推荐一下前端的学习路线,然后再问了我这个问题,估计是想看看有哪些技术是晋升中高级前端的关键,提前学习吧。
这里不管是前端、终端还是后台,我觉得是可以统一来讨论的。
有什么标志性的技能或者技术是可以作为中级工程师和高级工程师的分水岭的吗?只要学会了这些技术和技能,就一定可以晋升中高级工程师?我想是没有的。
我分享一下我对初中高级工程师的理解,仅供参考。
初级工程师就是应届毕业生,标志是能够熟练支撑中小型业务需求开发。他可能会支撑所有业务模块的开发,或者非核心业务模块的开发,同时也会支撑基础技术项目的开发。所以,如果使用是否参与基础技术项目来作为判断的话,是不对的。
中级工程师的标志是能够独立负责一个核心模块。成为一个模块负责人,这个模块的所有事情,领导都可以放心交给你的时候,你就是中级工程师了。这个负责模块,不是指能够支撑涉及这个模块相关的需求。而是指,你要:
- 了解它的全部代码、它的设计原理
- 了解它在整个系统中的位置、它跟其他模块的关联关系
- 了解它的各种特性、现状、问题、未来的优化、发展方向
- 维护好它的文档
- 可以很好地给其他人、你的领导描述清楚,这个模块的所有内容
- 负责它的一切
高级工程师的标志是能够负责一个系统 。成为系统负责人,带领项目成员一起,承担这个系统的所有事情。对比中级工程师,负责的内容更大更加复杂了,但本质没变,就是要综合能力。同时,中级工程师还只是单人作战,如果想要成为高级工程师,一定需要了解团队的力量,并学习如何通过合理的项目管理手段,做好一个复杂系统。
这里中级和高级都提到了"负责"这个词,那具体怎样才算负责,是领导指派给你,让你负责一个核心模块,就算负责了吗?不是的。这里的"负责"是指能够完全胜任,做出让领导满意的成果,让领导非常放心。
当然,每家公司对不同职级的能力要求是不一样的,你也可以完全按照上面的能力描述来进行有针对性的学习和成长。
以上就是我对于中高级前端开发的理解,希望能够给你带来一些启发。
【讨论问题】
你是如何理解中高级工程师的呢?
欢迎在评论区分享你的想法,一起讨论。
----------------【END】----------------
【往期文章】
欢迎加我v【longyiyiyu】,进行无负担沟通,我会
- 长期职业发展规划指导
- 近期工作重点交流
- 职场解惑
- 面试辅导
也欢迎关注公众号【潜龙在渊灬】,收获程序员职场相关经验、提升工作效率和职场效能、结交更多人脉。