需求量非常大,随着人机界面越来越多,比如手机,车载设备,各种物联设备等,都需要大量的开发人员来维护,而且前端的美观直接影响了用户体验,因此靠谱的前端工程师是公司宝贵的财产,前端的从业人员越来越多,好像越来越卷了。
前端程序员优势
入门简单,高级稀缺。入门比较简单,会html,css就能做前端,见过很多设计师兼职前端工作的。但越深入越难,初级多如狗,高级很难找,为了快速开发你得会Vue,React吧,为了构建项目你要会Gulp,Nodejs吧,此外还有Hybrid开发模式:用前端来呈现Android和IOS相同的页面,所以前端正变得的越来越复杂。此外对前端速度会有要求,你必须熟悉网络协议,性能优化等等。而且科班出身从事前端工作的并不多,因此高级前端码农的稀缺。
劣势
潜力不入后端码农。主要是涉及业务不多,没有业务就无法深入核心价值。而且项目经理也是经常从后端码农中出,因为后端业务多,复杂度略高。因此很多后端码农能转项目经理,能转架构师,甚至能做CTO,但前端开发能做到前端leader可能就到头了。
难点:快
前端的"快",体现在用户需求变化快,技术更新迭代快,和开发响应需要快等方面,都要求你不得不"快"起来。
难点:广
前端是一个同时具有广度和深度的领域,要解决的问题种类和范围覆盖面过于广,所以即使你的数据结构算法掌握得不够牢固、代码基本功不够扎实、对操作系统、线程、并发的概念理解的不够深入,但如果你能够具有一定前端知识的广度和经验,也能够让你在能够让你在部分的前端开发场景中游刃有余,而这里面的每一个知识和经验也许并不需要太多的技术积累,知道了就是知道了,不知道就是不知道,所以前端的积累很重要
临时想到的一些比如,数不完,且不同领域用到的都会不一样
基础类:常见的开发框架(React,Vue,Angular)有什么不同,开发框架的不同版本有什么特性(Vue2-3,React16-17-18),ECMAScript,最近更新了什么特性等等
基础组件:数据持久化,数据状态管理,路由管理,UI框架等
部署与发布:打包过程控制,依赖管理,web服务搭建,SEO,性能优化等
布局类:不同的CSS框架,常见布局设计模式等
通信/协议类:HTTP12,HTTPS,RESTful,常见认证协议,CORS,长连接,SSO,DNS,TCP等
可视化:2D,3D,常见可视化组件使用熟练度,canvas,webGL,基础/进阶动画效果等
多媒体:视频播放,地图,支付,分享,埋点,兼容性,声音等
框架/大前端:微前端,常见native开发框架,小程序等
开发流程:常用测试框架,常见设计框架,产品设计流程,软件工程等
开源细节能力积累:日期,