今天我来给大家说说 “全栈工程师” 的事儿。
写这篇文的背景原因:
很简单就是最近越来越多的人想做【全栈工程师】,他们的目标就是全栈,他们才入行短短1-2年,甚至刚从培训班出来:我的目标是做全栈,我啥都要学会,啥都会写,这样我就是大牛了,可以挣大钱,就算创业,我也不用招那么多人,一个人搞定一个产品,融资上市 ,CEO白富美,balabala。。。
我给他的回复是: 去你xx的,你连JS 数组和对象用法都搞不清,抄几个效果,看几个视频教程摸索摸索就要做万能人了?
** “全栈”工程师的定义 **
全栈工程师,英文叫Full Stack Developer,是指掌握多种技能,并能利用多种技能独立完成产品的人 -- 来自某百科。
一般理解:【全栈工程师】就是啥都会,啥都能搞,上能入天、下能入地。各种技能各种语言眼花缭乱,各种5杀 6杀 偷塔组合技能,pio pio pio,一人挑起全世界,各个技术栈技术点,前后通吃 疑难杂症统统不在话下,在世达芬奇,全能奇才多么牛x。
然而,真正的全栈是:我也不知道,我从来都做不了全栈而且也不想做啊,只知道,我在web前端行业挖的够深,够猛 够快乐就好了,T 字形人才,下面一竖要足够高足够粗了,才能撑起来上边的 一横。
我只知道,我从网上扒出来的计算机全栈大牛都是:基础知识无比扎实,蹲马步十个小时不带喘气的,从 二进制到 基础电路电位,到计算机运行原理,内存控制原理、数学计算基础、外语适应能力、逻辑思维能力、解决实际问题能力、出疑难杂症解决方案能力等等等等都是一把好手。各种编程语言 和 工具应用 只是他们解决某个特定问题的工具而已,仅仅是工具。
** 认识几位大牛 **
**发明nodejs 的作者 :Ryan Dahl ** -- 后端语言无所不通,思路绝顶聪明,计算机原理各种666,不然也不会解决多少年来让人头疼的 阻塞问题。
** JS宗师人物:道格拉斯·克罗 俗称老道 **-- 是无数前端人的偶像,他从c语言、java、c++、ruby、汇编什么的 市面上有的,他都得心应手并且是许多语言规范的发明和贡献者,可谓语言界的“全栈”鼻祖,尤其对js贡献巨大,现在许多web规范和语言范畴都是他制定的。出了十几本畅销20年左右的技术书。
** linux之父:Linus Torvald ** -- 此人更传奇了,可谓颠覆计算机世界,无所不能 ‘My name is Linus, and I am your God’ 这句话出自他口他说自己是神,大部分人是信了。此人会什么自己去百度吧
(在吐槽一下,为了写这篇文章我搜了不少资料,某度tm的搜啥 啥不准,都不是我想要的结果,最后还得翻墙google,再说一句,百度早晚倒闭。邪恶)
** 自己造火箭的 埃隆·马斯克 **,这个货确实啥都懂,火箭飞船都自己私人公司造,你想想他各个领域的基础知识和汇聚知识并为己用的能力是有多变态。 不过他再牛,也是需要团队的,期间各个细节也是把控不了的,世界上真的有所谓的全检吗?
以上几位才能在一定意义上说是全栈,基础知识扎实,基础素养和习惯良好,才是成为全才的关键。
否则都是二半吊子,啥都会,其实就是啥都不会
以下几种人,很典型并大有人在:
1.、会个 php + js+mysql就吵吵自己是全栈,前后通吃。
2、会做app、会做网站、会弄数据库、配置服务器环境,自己就是全栈了,有任何问题找我。
3、java、c++ 语言的转型前端 或者去做硬件然后掌握了不少框架 和工具之后,就说我是全栈了。
4、配置了服务器、了解了一门后台语言、听说和查阅过各种前端框架用法之后膨胀的,并立志我要做一个全栈。
我都不想说了,以上几种人在各位的实际生活中,公司中绝对都见过,而且吹牛逼的也很厉害,感觉公司离了他不能转,有任何难题就一句话: 简单,我会啊!结果 他留下的坑比要填的坑还要大。
** 具体原因 **
1、基础知识太渣,急于求成表现,盈利
2、坐井观天,会一项或者几项技能之后,自信心膨胀
3、技术浮于表面,经不起细节和解决具体问题方案的推敲
4、缺乏对解决问题的深度思考和负责人的能力
看我总结的公式:
普通人
全栈 = 全干 = 啥都会 = 啥都不会
真全栈
全栈 = 全都不干 = 全都有解决方案 = 各个行业都能干
所以,一开始就要喊 做全栈,你看看自己到底行不行,再来改变下你的定位。
最后结合我自己,熟悉我的人都知道,我除了帅,就是帅了,其实技术也就够吃饭、够撩妹的。
我从来不说自己想做全栈,不说自己啥都会,我总觉得自己啥都不会,三省吾身的,感觉自己知识还是不够牢固,了解的越多,越觉得自己是井底之蛙,还有很多不了解和学不会的,那就不学了吧/笑哭。
虽说我c、 c++、c#、java、php、python等甚至 vb老掉牙的语言我都写过和学过,尤其是c语言,当年我大学可是名列前茅,但最后我不还是选择了前端 专攻js,毕竟我还是个视觉感性动物。
后端语言经历为我打了良好的语言逻辑基础和解决项目难题的思路,所以没有现在刚入门的新人这么困难,没有后端编程语言 尤其是 c系列语言的概念基础,学js确实有些困难和迷惑。
收尾:如果你真的想做 ‘全栈’,请你结合我以上观点,深刻挖掘自己潜力,务必打好基础体系架构(这也是我个人一直强调的),不要急功近利,慢慢的往上走,把一门学科做到深入和佼佼者,自然融会贯通,因为世界万物到最后都是 【物质 】二字,都是一样的道理。
但,注意口型:请不要随意做 “全栈(贱)” 工程师。