随着终端技术的发展,前端工程师成了一个炙手可热的职位,甚至衍生出了大前端工程师的概念。那什么是大前端工程师呢?
其实就和打仗攻城掠地没什么太大区别,前端工程师们似乎对 JavaScript、CSS、HTML 以及层出不穷的前端框架有点不耐烦了,他们希望把移动工程师和后端的一部分工作,包括前端的工程化工作都拿过来,史称大前端工程师。比如,大前端与以前的 Web 前端的区别是,大前端将做更多的终端开发和工程化等工作,而不仅仅只是开发 Web 页面。大前端工程师将能搞定所有端上的开发 —— 注意这里是所有,谁知道未来还会出现什么端。与充满争议的全栈工程师相比,它似乎更具可操作性。
这种变化带来的是什么?
1、这意味着以前的前端工程师不仅要掌握 JS 相关的技术、标准、引擎和框架之外,他们还需要精通 iOS 和 Android 平台的技术,写到这估计很多工程师们已经在庆幸 WP 的倒掉了,毕竟可以少学一种技术体系了 :)
2、具备可操作性吗?我怎么没看出来呢,这还意味着,如果移动工程师 —— iOS 和 Android 工程师们如果不想被淘汰 —— 就需要深入到乱花渐欲迷人眼的前端领域,这又是一场血腥的领域争夺战啊。
但是前端工程师并不管这些,他们认为,大前端工程师将会是一个拥有强大生命力的职业 —— 难道比全栈工程师更强大么 —— 未来显示终端设备的生命力会越来越强,全息影像的设备,穿戴设备,人机接口等技术,最终都将归于端内。
那危机在哪呢?
1、这个时代终究是个分工合作的社会,每个人发挥自己最强的那部分,才能做出最好的产品,即使你是大前端,也不可能从都到尾负责所有的终端产品开发,你一样要和别人去配合完成自己最擅长的内容。否则前端有可能成为最大的瓶颈,除非你自己是个独立软件开发者。
2、要成为大前端,原来的 Web 工程师需要学习原生应用的开发,移动工程师则需要进入 JavaScript 这个极为复杂的 Web 领域,对双方来说都是挑战,也是机遇。
3、也是最难熬的一点,移动和前端技术日新月异,各种框架和语言层出不穷,以有生之年逐无尽之技术,我们能学的过来么?
观察从业几年的前端工程师,我发现他们其实具备了前端的基础技能,但想要进阶高级甚至技术专家,还是需要提升自己的核心能力,也就是编程能力、架构能力和工程能力。
编程能力,就是用代码解决问题的能力。
你编程能力越强,就能解决越复杂的问题,细分又有调试、算法、数据结构、操作系统原理等基础的支撑,你才能解决各种麻烦的问题。
架构能力,就是掌控复杂系统的能力。
当一个系统足够复杂,你会写每一块、能解决每一个问题,不等于你能搞定整个系统,这就需要架构能力。架构能力包含了一些意识,也包含认识业务建立抽象模型,还有一些常见的模式等。
工程能力,其实核心就是成事的能力。
你要知道,当系统规模越来越大时,光靠你一个人是没办法完成的。那如何保证几个高手互相能够配合好?如何保证项目里面水平最差的人不拖后腿?工程化建设,往往会跨越多个业务如何保证质量和代码风格?
这三项能力不管对于前端还是后端开发来说,可以说都是从初级、中级走向高级必须要跨越的鸿沟,也是作为一名程序员永不过时的技能。
全部0条评论
快来发表一下你的评论吧 !