一、全栈工程师是什么
“全栈”翻译自英文full-stack,表示为了完成一个项目,所需要的一系列技术的集合。“栈”是指一系列子模块的集合。全栈工程师(Full-Stack Engineer),也叫全端工程师,指的是掌握多种技能,对前端知识和后端架构都有深入的了解,并拥有足够的学习能力,能利用多种技能解决问题,独立完成产品的人。
全栈工程师熟悉多种开发语言,同时具备前端和后台开发能力,从需求分析,原型设计到产品开发,测试,部署,发布全流程都十分熟悉。
在著名的问答网站Quora上,有一个关于全栈工程师的高票回答:
全栈工程师是指,一个能处理数据库、服务器、系统工程和客户端的所有工作的工程师。根据项目的不同,客户需要的可能是移动栈、Web栈,或者原生应用程序栈。
我们可以看到,对于全栈工程师来说,其中最重要的属性,就是不同的思维方式和强大的学习能力。
假如你是一个web开发者,如果你既能做前端(需要熟悉HTML、CSS、JavaScript、H5以及Bootstrap、EasyUI等各种前端框架),又能做后端(需要熟悉Java或ASP.net或php或Node.js或Go,选项太多就不一一列举了),可以独自一个人完成一个类似电子商务网站的产品的开发,那你就算是全栈工程师了。
换种方式说,全栈工程师的思维方式更开阔、更新颖、更综合。 强大的学习能力体现在方方面面,并且不局限于特定的知识或是技能。
二、全栈工程师必须掌握的技能
成为一个优秀的Web全栈工程师应该具备哪些能力?收集了所有一线大厂的招聘需求,我归纳出了Web全栈开发需要掌握的技术方向:
1.PC、H5、Nodejs、小程序、移动端,掌握大前端所有技术栈
2.能够实现类Element-ui组件库,设计Vue组件
3.掌握Vue/React源码,MVVM库原理
4.了解Koa2源码,定制MVC开发框架
5.前端监控、性能优化、安全
6.自动化测试、发布、运维
网友评论