从根本上来讲, 高级前端开发工程师所用的技术和初级, 中级前端开发都是一样的, 都是使用 html,CSS,JS, 只不过是在深度和广度上更多一些. 同时高级前端的技术栈会向前, 后端做更多的延伸. 技术视野并不局限于前端开发, 而是从整个项目, 技术的体系架构上做全局规划.
一般这样的高级前端都是以项目, 团队 leder 的形式出现的, 他们考虑的问题不再是单纯的技术问题, 还包括代码规范, 协作 流程, 运维部署, 优化, 安全等范围. 更多的时候, 他们考虑的是, 如何让自己的团队更快更好的做好一件事.
很多时候, 高级前端并不真正参与 code 编码, 而是在作技术方案, 架构设计, 需求整理, 所以很多时候你会看到项目组长在与销售, 产品经理们开会, 讨论需求, 清理交互顺序. 搞这些的目的, 就是把方案, 架构设计好, 然后安排给手的团队成员们去做实际的编码工作.
而初, 中级前端开发一般只能实现业务功能, 不能保证代码逻辑的清晰, 简洁, 可扩展性. 也不具备各个模块之间的数据接口, 更别提各模块之间的依赖关系设计了. 说折了, 就是只能把功能写出来, 但代码质量就不好说了.
高级前端开发, 更多时候是出现问题的时候, 给出解决方向, 攻克技术难关, 做为技术带头人. 在开发前期确定技术方案, 做出技术选型, 例如采用什么框架来做开发之类的.
一般达到这个程度的时候, 他们实际的技术身份, 往往已经不再局限于 [前端] 了. 所以还有另一种说法,"根本没有高级前端". 因为前端开发到了真正的高级, 都已经不是单纯的前端开发了.
19.jpg
初级与高级前端之间的差距鸿沟是非常巨大的, 这里主要是全局, 架构设计, 方案选型等方面的差距. 很多东西, 你没有达到量级的积累之前, 是没有办法进行架构方面的思考的, 所以高级前端工程师, 前端架构师, 都是不能学, 教, 培训出来的.
初级前端主要是页面级的实现, 就是某一个, 几个页面上哪些功能, 你能给做出来. Ok, 这时你算是一个合格的初级前端了. 主要表象是 vue,react,node,webpack 之类的东西都能用, 好赖不提, 反正能做出来.
中级前端, 就是在初级前端的基础之上, 能知道一些源码, 原理之类的. 例如知道 vue 双向绑定的原理是数据属性, 访问器属性 Object.defineProperty() 里的 get,set 来实现数据劫持什么的. 知道 get,post 请求, head 请求头, 浏览器线程原理什么的. 反正就是各种能百度出来的东西, 这算是一个合格的中级前端开发了.
初级前端到中级前端的跨越并不复杂, 你就吭哧吭哧的搬砖, 有个三, 四年基本你就中级前端了. 不难.
但是中级前端到 [高级前端开发] , 这中间存在着一道鸿沟, 就是 "机会". 例如, 瞬时的千万级亿级的大并发访问你的某个页面, 模块, 这样的网络流量基本上只有淘宝双 11 才有. 你要不在那个地方, 你遇到不样的业务场景, 你就没有机会参与实施.
但是平心而论, 上例那种实施很复杂, 很难么?
未必.
如果你一个中级前端开发正好在那, 你参与了, 实施了, 有积累了, 事后再反思, 总结. 你必然在思想上要提高一级, 这样的场景多经历一些, 你也就高级前端了.
上述那个例子举的未必适合, 各位读者不必深究, 就是说这个机会的意思. 有些时候, 很多人搞了多年前端开发, 他还是个中级前端开发, 很可能就是因为缺少这么个机会, 而这样的机会的无价的. 所以有时候你也是没办法的事情.
150.PNG
所以同学们你们在前三年吧, 就是把页面撸好, 这比什么都强. 古时讲学好文武艺, 卖与帝王家么, 现在也是一样, 只不过换成了资本家. 996 也好, 马福报也罢, 这都不是重要, 撸上三年, 升级到中级前端, 再积累积累. 然后你技术上, 基本你也就这样了. 这时, 你再想提高, 想百尺杆头更进一步, 看机会.
机会来了!
你中级前端技术都准备好了, 你一越而起成为高级前端开发. 古往今来都是这样, 时势造英雄么.
多年编程经验, 今年 1 月整理了一批 2019 年最新 Web 前端教学视频, 不论是零基础想要学习前端还是学完在工作想要提升自己, 这些资料都会给你带来帮助, 从 HTML 到各种框架, 帮助所有想要学好前端的同学, 学习规划, 学习路线, 学习资料, 问题解答. 只要加入 Web 前端学习交流 qun:296,212,562, 即可免费获取, 学习不怕从零开始, 就怕从不开始.
来源: http://www.jianshu.com/p/55371cb96f4d