怎么就算是一个好的前端工程师
设问
如何做好前端工程师?
如果做合格的前端工程师?
如何做优秀的前端工程师?
前端能做什么
早年间:前端被称作网页工程师、web工程师,集美工、样式布局于一身。那时候是web1.0时代
到后来:随着javascript的流行,web进入了2.0的时代,慢慢的各种框架、解决方案层出不穷,backbone、seajs、react、vue、nodejs等等,对于前端来说能做的东西越来越多,称呼也随之改变,称为前端工程师,javascript工程师、H5工程师、小程序工程师等等
对于现在的前端来说,需要掌握的技术栈越来越多,可以做的也越来越多:pc网页,小程序,移动端页面,工程化,可视化,自动化,等等,每一个拉出来都是一个大专题。
普通前端和优秀前端的区别
普通:浅尝辄止
优秀:涉猎广泛(包括其他领域)、深入原理
前端的角色
普通前端和优秀前端的区别
普通:
- 和产品/项目经理对接好需求
- 拿到ui提供的切图
- 拿到后端提供的接口
- 开发完成页面,交付测试
- 呈现给客户/用户,任务完成
优秀:
- (产品思维)和产品/项目经理讨论需求,结合经验发现需求点中的不合理或者不利于开发的内容进一步的分析确认
- (审美碰撞)和ui明确切图范围,切图内容,同时进行一些美学讨论,相互吐槽审美是前端和ui关系中乐此不疲的事儿
- (协同合作)和后端详细对接接口,包括路由合理性,数据返回结构合理性,命名是否规范,在开发前期就尽可能规避风险
- (保质保量)开发完成页面功能,反复自测优化,呈现给客户
- (精益求精)对于开发中的通用产品,需要回归评审,即使优化升级,任务是持续的
前端是联系各个角色关系的桥梁,前端也是产品出口的集成方,所以前端扮演了很重要的角色
通过前三张描述可能大家已经得出什么样的前端才是优秀前端的结论了 深入原理+做好细节
到了这个时候,很多开发人员会陷入迷茫期,感觉自己在公司 学无可学 ,甚至感觉前端 学无可学 ,感觉用单一的技术每天沉浸在业务开发中,没有发展,对自己未来的规划产生了迷茫???
从大厂的晋升看个人的规划
抛开前面的内容,我们来看看阿里的前端等级划分是什么样的?
阿里前端等级划分
像阿里、腾讯等这些大厂,有着比较严格且规范的晋升机制,大家对一对这个表,是不是感觉自己好像也到了中高级这个水平了吧
关于 阿里内部晋升机制
我们来看下两个大厂关于晋升的要求
腾讯的
阿里的
两个共性:KPI指标、业务贡献(核心业务、业务突破),总结一句通俗易懂的话,用你所学,为企业创造价值,突破性的价值
来一个小结
什么样的前端才是优秀前端有结论了 深入原理+做好细节+业务开发
有人会说了,我了解原理,细节也做的很好了,我每天都在进行业务开发,开发了多少多少的业务模块,一个项目中可能百分之九十的业务模块都是我开发的。我就是优秀的前端开发了
我的回答是:NO
业务贡献 ≠ 业务开发
我打个比方:
业务开发——>解决项目实际问题——>对应公司给予你的是薪资报酬或者绩效——>短期
业务贡献——>解决所有项目或者行业实际问题——>对应公司给予的可能是绩效,或者是晋升能力池的积累——>长期
所以什么算业务贡献呢?
- UI库的沉淀——>沉淀常用业务功能组件,广泛应用到业务项目中
- 脚手架开发——>规范开发流程,提高开发效率
- 复杂功能组件沉淀(比如:表格组件)——>广泛应用到业务项目中
- 通用业务组件沉淀(比如:台风模块、雨情模块、水情模块、后台管理)——>减少开发周期,提高产能
- 可视化配置
- 组件展示平台
- 自动化集成发布
- ......
敲黑板,划重点:合理的设计、通用的功能、复用的模块,核心目标就是减少重复开发,提高产品质量,提升开发效率。你一个人的产出可能抵过好几个人的工作量
最后一个小结
什么样的前端才是优秀前端有结论了 深入原理+做好细节+业务贡献(这回是真的业务贡献了)
我的回答还是:NO
万里长征最后一里路,优秀前端最后一个特质:总结分享,经验论永远不如方法论,一定要学会把经验转换为方法,进行传播和分享。
第九页 总结
结束之前,大家再回顾下文章开头提的那三个问题,思考思考自己现在到了什么程度,距离一个优秀的前端还有多远的距离
一个优秀的前端肯定不止有这些特质,还有更多的闪光点有待挖掘。以上观点属于个人多年经验感受,在这个过程中对于新员的培养都遵循这么一个指导原则,如果让一个前端小白,成长为一个合格的优秀的前端工程师,任重道远,以上观点,仅供参考