全栈工程师为什么会招黑? 举报 理由 举报 取消 最近黑全栈工程师的比较多,而且听说一种说法,说全栈工程师没有存在的必要,真的是这样吗~ 2017年4月26日 10 条回复 979 次浏览 互联网,公司,创业,开发,程序员
回复 ( 10 )
好吧,其实很多”全栈工程师”连栈是啥玩意儿都没明白
先忽略领域知识,只说语言。
我开始以为他们说的全栈是:后端掌握 C++/C 或 Java,前端掌握 React、Bootstrap,客户端通晓Android 或 iOS,还可以兼职运维工作,我有认识的工程师非常聪明、努力,确实做到了。现在年轻人真不得了,这么多全栈,结果搞了半天是 React + NodeJS,懂点 JavaScript 就全栈了。
蛤?
我自己的看法是,一个人追求全栈可以,那是他个人的自由。但是如果一个工作岗位追求全栈,然后还来鼓吹这种东西的话,那证明这个公司是不健康的、效率底下的。人类文明的发展是通过分工合作来实现的,当然这并不是说物理学家就不能学画画学文学学生产学营销,而是当你写教材的时候,插画雇人来画,审校雇人来做,出书雇人来印,买书送去书店,肯定出活更快。
公司效率低的问题很严重,首先一个就是你的工资也会低,因为他没钱给你。所以为了自己好,在自己努力成为全栈程序员的同时,不要去应聘全栈程序员的职位。
对于一个没有普遍接受定义的术语,没有辩论的空间。
A 说这个术语有什么问题,B 就会说你搞错了,其实这个术语是指XXX(B 的定义)。
然后,C 说按这定义就有什么问题,D 弹出来说 C 搞错了,定义应该是 XXX(D 的定义)。
没完没了。
不是没有存在的必要,是越来越难以存在
追求『 ▇ 』 型人才是好事,但是一个普通智商的人能做到『 T 』型人才就很牛逼了,实在不行也可以做『 l 』型人才,但是一个 『一』型的跑过来说自己是 ▇ 不被黑才怪。
在周围从来没遇到过自称是全栈但是能对得上这个称号的人,不是没有遇到具有全栈能力的人,很多真接近全栈的大牛不以此自居,一知半解的人老说自己是全栈才是最可怕的。
在早期,程序员基本都是『全栈』。随着互联网的发展,为了应对不同的挑战,不同的方向都需要花费大量的时间精力解决问题,岗位细分是必然的。这么多年来每个方向的专家经验和技能的积累都不是白来的,人的精力和时间都是有限的,越往后发展,真正意义上的『全栈』越没机会出现了。
当然如果像有些回答所说的那些创业公司前后端可以一起做的就定义为『全栈工程师』的话,那我觉得『全栈』应该不是一个追求,是一个基本要求,如果连这点学习能力都没有,也做不长这一行。
岗位细分不代表基础知识就不要了,前端同学懂一点数据库和后端服务应该是基本要求,但不代表折腾下node就说自己是全栈了,不黑你黑谁。后端同学能写基本页面应该是基本要求,但不代表写几个bootstrap就说自己是全栈了,不黑你黑谁。
所以,还是对技术抱有敬畏之心比较好。
现在大部分全栈工程师也称为demo工程师,小部分另称为“因为老板加不了钱请不起人所以全部得干的加班狗”
全用栈而不用堆的程序员不是好程序员。
相对于同事, 我算的上的全栈了, 我招黑的机率得确要比其他同事大的多。
先说下技术背景
.net, 有过2年专门的.net经验, 网站和windows客户端的, 懂C#、F#、CLR
php, 项目经验无数
java,用spring做过几个项目, 研究过tomcat源码,懂点JVM,周志明的《深入理解JVM》读的滚瓜烂熟
JavaScript,曾在这个上面花过大量时间,能不利用引擎徒手写出网页小游戏。 钟爱TypeScript
Nodejs,会Js和其它的服务器端语言,会nodejs自然就不奇怪了
golang,写过几个服务器程序
android,工作之外开发过几个小项目
此外, 一些编程方面的通用技术掌握的不错,包括面向对象、数据结构与算法、计算机网络、编译原理等。 当然我掌握的程度和轮子哥这样的大神们还差十万八千里。
然而, 我们公司写代码的除我之外, 全是PHP程序员。
用visual studio和c#写程序不管是开发环境还是语言都完胜phpstorm和php这个是众所周知的, 但当我向同事们推荐.net技术时, 完全被当成外星人来看,他们的理解是现在互联网行业技术领域都是被Java和统制的,用.net可能连份像样的工作也找不到, 花这个时间去学习.net还不如多打几盘撸啊撸。至于.net平台在技术优势, 没用过的人是完全体会不到的。因此, 每次向同事提到.net时,都会招到白眼。
我们的一些php程序在用户访问的高峰期也会出现性能问题, 且一直无法解决,程序定时抽风。 我向大家推荐尝试使用golang重写一些高并发模块时,几乎得不到认同, 吐槽声倒是不断。 领导认为, 公司所有项目都是php的,使用golang会增加员工学习成本,降低工作效率, 也会使整个技术架构不一致。 同事们则认为, golang性能的却突出, 或许是能解决问题, 但是php的性能也不差, 人家微博用的也不是php吗, 只是我们没有找到窍门而已(php是世界上最好的语言),至于golang的其它优势, 一概忽略。
我向前端同事推荐TypeScript,静态类型和DefinitelyTyped可以提高代码可维护性和编程体验,前端同事茫然的向我眨巴眨巴眼睛(我知道, 他们大多数可能连静态类型是什么都不清楚)说:我现在在学习xxx框架, 你说的这个以后我抽空去了解下。 然后我就知道我又在白费口舌了。
我跟同事说,学一些面向对象和设计模式对写代码有好处时, 他们会说:又不是写Java,用什么面向对象和设计模式,php中从来没有这些。 好像面向对象和设计模式是Java专属似的。
我跟同事说使用数据库索引最好先了解b tree数据结构时, 他们会说:卧槽,这么高端。心里却在想:装什么B,就你专业,老子用create index就足够解决问题了。
我自己有时候在写代码解决复杂问题时, 明明有更好的方案可以用, 但偏偏被php约束的死死的,怎么都施展不开。 给我的感觉就像眼睁睁的看着一台iphone 7 plus放在眼前,编编只能用山寨的安卓机, 要多难受有多难受。
在团队中我显的那么另类,同事对我也会有一些玩味的吐槽。 某些时候同事维护我的代码时, 偶尔就会蹦出一句“你的代码我不敢动呀, 怕碰坏了你的设计模式” 。还有如“听说你要去和妹子约会, 跟她聊聊.net的好吧”,这样的情景不胜枚举, 有时候真的另人哭笑不得。
年轻的时候埋头钻研技术,到后来才明白, 技术嘛, 够用就行, 在一个岗位上,最重要的解决问题和把事情做好的能力,技术什么的真不是最重要的。我们领导动动嘴巴就能让我做事, 然而,论写代码他的战斗力乘以十都不一定是我对手。 而且, 软件开发讲究的是团队合作, 要做全栈特立独行使用别人不会的技术, 那就是跟人过不去,砸人家饭碗, 那些非全栈的工程师能让你好受么,不黑你才怪。
当然, 全栈也有全栈的好, 技术面广意味着在技术层面解决问题的能力相对较强, 技术在程序员这个职业中还是占着非常重要的位置的。只要不仗着自己技术牛B,不把人放在眼里, 乱搞破坏, 同事们也会服你, 领导会欣赏你, 升职加薪这种事情也会来的容易些。
因为全栈工程师性价比低啊。之前老板招人以为说招个全栈一个顶俩。结果呢,因为一人要干两人的活,肯定慢啊。所以最后还是得只干前端或者只干后端,那和找普通的前端/后端工程师有啥差别,还贵……嗯,更重要的是,招个前端只要提防着不被别的公司前端挖角,招个全栈,不仅要提防着别的公司前端,还得提防后端……总之,招、全、栈、不、划、算~~
《人月神话》这本书应该大家都看过——沟通是有成本的,特别对于软件工程项目。
全栈适合初创企业和小公司。领域专家则适合成熟项目。
就现状而言,全栈工程师仍然是少数群体,数量稀少,中国大部分程序员是都是大公司的一颗螺丝钉,随着垄断的加剧,这个趋势在继续增加。全栈比例在中国其实很低,所以你说问题是不存在的,因为黑人必须找到对象,在中国你黑都找不到人黑,呵呵。