前端、后端和全栈到底不应学什么

一、前言
在职业规划咨询过程当中常常会被问到这样的问题:
老师,我是该深刻钻研专精一门,走技术大牛路线,仍是全部都要精通,作一个全栈工程师?
相似问题的变种还有,老师我是否是该30岁最迟35岁就要转管理了,是否是技术年龄大了就没有优点,精力跟不上了?
这是一个从业者广泛存在的问题,反应了技术发展的两个方向,一种是纵向一种是横向的,横向的是瑞士军刀,纵向的是削铁如泥的干将莫邪。 到底选哪一个呢?
要想弄明白这个问题咱们要说清楚,全栈是什么?说道这个我想起我之前的职位还闹了一个笑话。
有人问我:你什么职位啊?
我说:先后端开发工程师。
而后他说:是前端开发工程师?
我说:不是。
他说是:后端开发工程师?
我说:不是。
他说:啥叫先后端开发工程师啊?
我说了那个我很不肯意说的词儿,尽量让他明白,全栈工程师。
他说:就是啥都会干呗?
我说不是。
图片描述
二、前端、后端、全栈是什么?
而后我岔开了话题,是的,前端后端全栈不少人都有着误解。
好比不少人按能力排名是这样的:
前端>后端>全栈,而后人们都喜欢最牛掰的,就像没人知道第二个登上月球的人同样,而后全栈就火了。我先把这三个工种该作什么不应作什么,你们就清楚怎么作了。
前端:
全部你能看到的东西都是前端作的,好比界面,好比交互,固然还有数据从后台读取展现和向后台发送数据。
(具体对好比图,一图抵万言。)前端

图片描述
后端:
全部跟业务逻辑权限控制数据处理有关的都是后台作的,好比权限控制,订单管理,数据库交互。
图片描述vue

全栈:
前端后端都有必定的了解和能力,可以先后端独立工做。java

图片描述
经过三者的综述,你们能够清晰的分出前端和后端的工做内容和所需技术,可是对全栈仍是不是很了解,至少他不是简单的前端+后端技术的叠加。那么全栈到底工做内容是什么呢?他的价值又在哪呢?咱们是否须要成为这样的人呢?node

三、全栈工做内容是什么?
首先全栈是掌握多种技能,并能利用多种技能独立完成产品的人 。
他们掌握着独立完成产品经常使用的20%技能,另外的80%须要的时候有能力得到。而另外两个工种是掌握着专业领域80%的技能,甚至是90%,另外的10%经过其余渠道得到。sql

图片描述

四、全栈价值是什么?
全栈工程师的工做内容和价值融在一块儿。
全栈工程师就算是各方面都是80%(确实有这样的人存在),可是精力有限,他一我的不能长期干3-5我的的活儿。因此他们工做的大部份内容在全局性把握和沟通,特别优秀的全栈能作到关键性技术指导。数据库

全局性把握
现代项目的开发,不多说只用到一两种技术的,特别是移动互联网大潮下。随便一个互联网项目中用到的技术,就会须要用到后端开发、前端开发、界面设计、产品设计、数据库、各类移动客户端、三屏兼容、restFulAPI设计和OAuth等等,一些比较前卫的项目,可能会用到SinglePage Application、Web Socket、HTML5/CSS3这些技术,还有像第三方开发像微信公众号微博应用等等。后端

Web前端也远远不是从前的切个图用个jQuery上个AJAX兼容各类浏览器那么简单了。现代的Web前端,你须要用到模块化开发、多屏兼容、MVC,各类复杂的交互与优化,甚至你须要用到Node.js来协助前端的开发。
因此说一个现代化的项目,是一个很是复杂的构成,咱们须要一我的来掌控全局,他不须要是各类技术的资深专家,但他须要熟悉到各类技术。对于一个团队特别是互联网企业来讲,有一个全局性思惟的人很是很是重要。浏览器

在恰当的时机用恰当的技术开发实现恰当的产品经常要远比具体某个功能实现要复杂和重要的多,而这是全栈工程师须要考虑的。微信

图片描述
沟通成本
项目越大,沟通成本越高,作过项目管理的人都知道,项目中的人力是1+1<2的,人越多效率越低。由于沟通是须要成本的,不一样技术的人各说各话,前端和后端是必定会掐架的。每一个人都会为本身的利益而战,绝不为已的人是不存在的。koa

而全栈工程师的成本几乎为零,由于各类技术都懂,成竹在胸,一不当心本身就全作了。即便是在团队协做中,与不一样技术人员的沟通也会容易得多,你让一个后端和一个前端去沟通,那彻底是鸡同鸭讲,更不用说设计师与后端了。但若是有一我的懂产品懂设计懂前端懂后端,那沟通的结果显然不同,由于他们讲的,彼此都能听得懂。

全栈工程师的机会
创业型公司和中小型公司的发展,尤为是万众创业的风潮,会促进全栈工程师的发展,也会更加凸显他们的价值,由于虽然单个全栈工程师的工资很高,可是远比专业性分工团队的成本要低得多,并且全栈工程师更能应对多变的创业公司需求,下降团队沟通成本。

五、全栈面临的困境是什么?

可是,不少人为了成为全栈工程师或者已是全栈工程师面对着巨大的困境。
1.一个工做两年的切图都比一个全栈工程师切图好,一个8k的java都比3W的全栈写的代码快,他们经历着博而不精的煎熬。
2.成为全栈不少人须要花费大量的学习时间,到最后依然是无功而返。
最后形成了一个现象是,你确实什么都会,问题是我要的是一个8k的切图,而不是一个3万什么都会一点的全栈。
形成这两个现象的缘由有内因和外因两个方面。
内因看我的定位不清晰,在该专精的时候选择了全栈。
无论是前端仍是后台,全栈的意思是你可以独立工做,不是你前端会切个图,后端你会写个sql就行的,而一个领域没有三年是达不到上述状况的,而不少人工做三年切图或者js就想着全栈了。
全栈不是一不当心成为的,是你的工做经验堆出来的,不是学出来的。举个例子你们就明白了,你们都看过武侠小说,你们知道哪位顶尖的武林高手一出师门就励志学会武林各门各派武功的?相反提起东邪,你们想到的是他吹笛子能吹死人,说到西毒立马想到蛤蟆功,说到南帝一阳指,说到北丐打狗棒,那为啥到你就得工做三四年就全栈,先后端啥都会呢?

武侠里面有两个全栈工程师,一个是鸠摩智,号称会少林七十二绝技,结果呢,最后变成了“打残哥”,虚竹来了把他打残了,段誉来了把他打残了,最后乔峰来了又把他打残了,因此想经过学习变成全栈确定会死的比鸠摩智还惨。
那怎么办?武侠最强全栈是扫地僧,这家伙是bug级存在,可是你们发现人家是靠年头熬出来的。因此这个是正路,全栈是经验不是课本,是一种思惟。
图片描述
为何说国外全栈不少呢。由于不少人都是10年以上工做经验,一开始是后台工做,工做了几年跳槽了换了一家工做发现须要数据交互又作数据交互了,这个时候也会简单的切图了,而后工做又变更发现切图和套js太麻烦了。
用vue试试一不当心又会vue了,vue写多了,发现后端是否是也能够用js啊,有了node和koa,那数据库是否是能够呢,上MongoDB,最后发现这个语言很差用,我本身写个吧。因此不少全栈都是大胡子中年。

全栈应该是业务需求催出来的,而不是学出来的。但是如今不少提全栈的人都是什么人呢?大部分是工做3-5年想转管理的。

其实全栈和技术大牛是异曲同工的,就像《人月神话》里面技术专家和手术刀其实最后都融合了。你学吃饭的过程想过是只学用筷子仍是勺子吗?

由于当专到必定程度的时候天然就融会贯通了,反过来当你博采众长的时候,天然就知道哪里本身薄弱须要增强了,全栈和专业并不冲突,他们的目的都是为了完成工做这件事。
从外因看,科技节奏的飞速发展,万众创业催生出了一系列小型公司,从成本催生了对全栈的热捧,另外知识行业的贩卖焦虑,培训行业的推波助澜,加重了前端行业对全栈的急功近利的追求。

因此全部前端从业者应该明白,技术是为解决问题服务的,找准本身的位置,经过时间去不当心成为全栈,而不是成为书本里的全栈,作一个务实的技术从业者,那么他的明天必定是光明美好的。
最后一句,技术是为解决问题服务的。

·END·
相关文章
相关标签/搜索