全栈工程师会是未来的发展趋势吗?

标签: 价值新闻转载 | 发表时间:2014-01-22 15:51 | 作者:神刀
出处:http://www.shellsec.com

最近,网上很流行一个词:全栈(Full Stack)工程师,也可以叫全端工程师,无论是前端知识,还是后端架构你都要了解。甚至有些调皮的程序员这样理解全栈工程师:全栈工程师=屌丝战斗机=系统+网络+研发+dba+架构+安全=没女朋友、拿一份工资做三份事情的典型、每个站长都是一个全栈工程师,每个站群的站长都是超级全栈工程师。 以前,软件工程师最在意的是成为某个领域的专家或者高手,如今,随着软件技术的发展以及需求的变化,尤其是越来越多的程序员出来自己创业,由于各种条件限制,许多技术上的问题不得不亲力亲为地去完成,因此,很多程序员慢慢地就练就了精通多门技术的本领。 该截图来自  知乎网 这不,就有位程序员在知乎上提问:“  怎样成为全栈工程师(Full Stack Developer)?,在OSCON会议上,一名Facebook的工程师说他们只聘请“全栈(Full stack)”的程序员。”此话题一出,引起了大家的热烈讨论。许多经验丰富的工程师纷纷在下面留言,讨论成为全栈工程师的价值在哪里,大家是否需要成为全栈工程师,笔者就知乎上的精彩回答进行了整理,不妨一起来看下: Cat Chen


既然原文是说,Facebook工程师说Facebook只招Full Stack Engineer,那我就来说说Facebook Engineer都是怎样的人。 我觉得任何一方面的具体经验都不重要,重要的是思维方式和学习能力。首先说思维方式,那就是不为自己设限,不会想着自己是前端工程师,所以后端的东西我就一点也不碰。Facebook 的工程师,级别越高就需要保持越大的影响力。如何创造更大的影响力,就是寻找当前杠杆效应最明显的问题来解决。有些问题你解决了的话,投入进去的时间每小时能换回来一千美元;有些问题你解决了的话,投入进去的时间每小时能换回来一百万美元。然而哪些问题更值得解决,这是动态的,往往还存在衰减效应。如果现在性能瓶颈在后端,你做了一个季度两个季度优化后,瓶颈就已经不在后端了,你再优化下去衰减效应就会越来越明显。等瓶颈变成前端了,你是不是就说因为你不懂,所以不愿意碰?那就相当于寄望于公司有个前端很懂性能优化的人来解决,但如果公司没有这样的人那就没有人来解决了。 Facebook的众多海报当中,有一张写的是「 任何一个Facebook 的问题,都不是别人的问题」。有问题,你就需要去评估是否值得解决。如果值得解决,你就应该着手去解决,而不是假设公司内会有另外一个人比你更合适解决这个问题。这时候很可能你就需要去做你从来没有做过的事情,需要学习你原本可能完全不懂的技术。如果你是个专门做数学模型的博士,加入Facebook 原本是打算做搜索结果优化的,结果发现这不是最急需解决的问题,JavaScript 性能才是最需要解决的问题,你怎么办?如果你以为 Facebook 需要的是你做数学模型的经验,那你就错了。Facebook 需要的是你完成博士学位的学习能力。你从来没做过JavaScript并且觉得JavaScript很恶心?正确的做法是立即在网上买几本JavaScript入门的书连夜看完,然后着手分析性能瓶颈并且解决。在你完成手动优化后,你还可以思考一下能否把这做成自动化,例如说在代码提交时分析JavaScript语法树并且指出可能成为性能瓶颈的地方,又或者说从用户浏览器那里收集性能数据扔到Hive然后再从中分析产生瓶颈的特征。这些都可能涉及到一些你没有做过也没有学过的东西,但问题摆在那里你就需要去解决,而无论这要求你去钻研什么。这就是我所说的学习能力。  

顾鹏

   
设计、后台开发、前端开发、移动开发、运营维护、PS、文案... 好像都会了,这算Full Stack Engineer了么? 不,这只是踏上成为Full Stack Engineer的第一步。你知道目前只是每个stack都懂一点,离senior或者expert还差得远,而要每个stack都做到极致,需要大量的时间和精力。精力有限,产品开发紧迫,力不从心啊,这条道路也太孤独,因为你不需要与任何人进行协作。难道要把一些stack的任务交给别人做么?这样算是放弃成为Full Stack Engineer么? 不!这不是。什么是Engineer? Engineer的本质工作是设计,开发出应用于大众的产品。 一个真正的Full Stack Engineer,他从生活中发现问题,洞察需求,他设计解决方案,并开发出初始版本的产品。为了达到目标,他愿意去学习任何领域的技能和知识。同时他不追求一个人完成所有工作,如果有人可以比他在某方面做得更出色,便会十分热情的邀请他们加入。 最终他的职位也许不再是Engineer,他不再设计UI,不再写代码... 他的工作不再是设计/开发一款应用/产品,因为他有更大更重要的任务要做——design and building a team or a company which builds great products。 而这时,社会给了他们另一个称呼——创业者。尽管众人已忘记他们engineer的身份,但在他们骨子里,内心深处,自己始终都是一个engineer。当他们需要从头再来时,他们毫不犹豫从设计开发产品做起。Nikola Tesla,Ferdinand Porsche,Henry Ford,Jack Dorsey,Mark zuckerberg,Elon Musk... 细数那些改变了或正改变世界的创业者,他们大多数是engineer背景,热衷于设计创造。 他们学习技能和知识,不是为了成为某个领域的专家;而是因为那些 是完成自己目标所需要的。 李楠
Full Stack Developer在国内不被接受的一个主要原因是公司缺乏稳定的T线(技术职位晋升路线)。很多有才华的人写了几年代码后去做了管理。今天的网络相关技术,聪明又能持续学习的人,在三年之内可以在一个领域做到很高的水准。那么如果你做五年,十年甚至十五年呢?我认为成为Full Stack Developer是很自然的选择,而且可以跟随最顶尖的技术。 Full Stack Developer的核心并非否定团队和协作,而是更多的体现在架构设计,快速原型和TroubleShooting方面。随着今天的分层越来越清晰,平台和语言越来越有特点,更加全面的技术人员可以根据不同的语言搭建整个架构。 Full Stack Developer并非杂而全——Facebook也不会雇庸手。他要求的是一种更加全面的深入。 一方面,他是技术人员不断学习的结果。另一方面,他也是对自己事业的一种责任。  

kubisoft

 
既然叫工程师,就是应该负责技术的,而不只是写代码。 各方面的技术,各方面的技术架构。比如,关卡编辑器里面的图层该怎么搭,如何定义?美工PS出来的图片应该是什么规格?这些都是技术架构,都是工程师要去做的。工程师应该帮美术做好图,做好动画;帮策划做好关卡,填好数据;这才是工程师。所有跟技术相关的东西,包括Photoshop的使用细节,3dmax的使用细节,都是工程师需要去搞定的。美术只是在工程师做好的基础上让它更漂亮更好看,策划让它更好玩。     如果只局限在自己的代码中,就只能是程序员。如果只关心客户端而不关心服务器,就无法对技术负责,就只能是一个程序员。每一个实际问题,都有可能涉及各方面的技术。举个例子来说,做格斗网游,要做出良好的打击感,你就不仅要关心渲染技巧,还要关心美术特效,还要关心网络,关心服务器应该传送过来哪些数据,还要关心哪些东西是对玩家有用的必须表现出来的东西...当你的关注重心从代码转移到具体实际的问题的时候,就成为了一个工程师了,继续努力下去,就很容易变成全能的工程师。   知乎上的匿名用户:
首先我觉得 好的开发者,即使不是全栈,也要融会贯通多种技术。我从来不认为一个只专精一种技术的人有可能成为好的开发者,即使是C,即使是汇编。(当然其实反过来看,那些大神们哪个不会搞点其他的?比如几个做服务器端开发的大神居然不懂服务器管理?) 然后从广度和深度的组合看,我认为好的开发者大概有两种类型:  
  1. 手术刀
  2. 代码专家。
(来自《人月神话》)   手术刀是业务驱动的,最需要全栈的人;他们的核心价值在于:懂业务,技术全面,都能拿的起来,而且能选择最合适的技术。代码专家是技术驱动的,即使不够全栈也可以用,但是技能树点的越多当然有好处。 下面要讲的是创业逼出来的全栈,对于创业团队而言,手术刀更加重要,代码专家要依靠各种开源组织的贡献,或者临时聘请。创业的最大需求技能是整合资源的能力,找合适的人做事的能力。 所以我说的,是说对于我,种子期,天使期,最重要的都是我自己作为手术刀,而不是资源整合者。 全栈工程师不是为了工作本身,是为了方便实现自己的梦。  如果不是创业,我的价值可能也就是个2w 多工资的架构师或者技术经理,这个价格远远对不起我这13年的付出。一个真正的全栈工程师,目标只有一个:创业。  
看了上面的回答,你是否知道了如何成为一名全栈工程师呢?关于该问题的更多讨论,欢迎大家访问 知乎讨论页。(以上内容来自 知乎网) 随着工作经验的逐年增加,程序员/软件工程师所接触的技术领域会越来越广泛,无形中就会对某个技术有所了解,对于上进、想闯出一番天地的程序员而言,他们非常乐意并且会主动去学习这些技术,这样,自然而然的就学会了多门技术,精通多种语言。 马上就要春节放假了,许多人都在做年终总结和新一年的规划,许多程序员都希望自己在新的一年里能做出更好的产品、学到更多知识、进一步提升自己的技能和综合能力,这或许也是全栈工程师成为热门的原因之一。那么,这是否也说明,要想在软件开发领域走的更远,就必须掌握更多的技能,成为一名全栈工程师呢,这会成为未来程序员的职业趋势吗?大家不妨一起来讨论下。

The post 全栈工程师会是未来的发展趋势吗? appeared first on 神刀网.

相关 [工程师 未来 发展] 推荐:

全栈工程师会是未来的发展趋势吗?

- - 神刀网
最近,网上很流行一个词:全栈(Full Stack)工程师,也可以叫全端工程师,无论是前端知识,还是后端架构你都要了解. 甚至有些调皮的程序员这样理解全栈工程师:全栈工程师=屌丝战斗机=系统+网络+研发+dba+架构+安全=没女朋友、拿一份工资做三份事情的典型、每个站长都是一个全栈工程师,每个站群的站长都是超级全栈工程师.

谈工程师的价值和发展

- - 博客园_知识库
  本来想写招聘广告的,结果谈工程师就花了大把的篇幅,算了,就索性换了一个标题,讨论一下工程师的价值和发展.   我一直认为,工程师,尤其是一线的,是最接近真相的人,也是最懂业务的人,应该有充分自由去实现自己想做的事情,去改造存在问题的项目,去颠覆陈旧的观念,可惜中国的土壤不好,公司的文化和观念也不是一天能改过来的,如果你能有机会去硅谷,那恭喜你,工程师在那里的地位是最高的,有像 Facebook 一样的工程师驱动的文化,有自由的空间和足够大的舞台.

Coursera数据工程师董飞:硅谷大数据的过去与未来

- - ITeye资讯频道
董飞,Coursera数据工程师. 曾先后在创业公司酷迅,百度基础架构组,Amazon 云计算部门,LinkedIn担任高级工程师,负责垂直搜索,百度云计算平台研发和广告系统的架构. 董飞本科毕业于南开大学,硕士毕业于杜克大学计算机系. 他在知乎上分享过多个引起强烈反响的问答,其中包括 《哪些硅谷创业公司能给拜访者留下深刻印象》、 《美国大数据工程师面试攻略》、 《Coursera 上有哪些课程值得推荐》等.

未来项目管理发展趋势

- tiod - cnBeta.COM
根据ESI国际项目管理培训公司的分析,项目管理作为一门学科越来越被接受. 公司项目管理将起到关键作用,无论是开发新的产品和服务,或确保日常的日常工 作顺利进行. 项目经理可以组织本地或远程团队,在许多情况下还是虚拟团队,不同的群体的人为一个项目一起工作. 对于组织,人才和项目经理是一个有效的竞争 优势,根据ESI执行副总裁J LeRoy的 分析,这种情形在2011年仍将继续.

IT未来发展五大趋势

- - VooSee - 拮取生活中的彩虹
  是否拥有一个关于创新可以影响商业发展的想法,是区分好的CIO与伟大的CIO的条件之一.   所以,商业科技的下一步发展是什么. TechRepublic请教了五位科技领域内的专家,试图预测IT将来在企业内部或外部的发展情况. 1.通过增强现实来提升体验.   EconomistIntelligenceUnit全球技术研究主管DenisMaCauley一直致力于研究IT及增强现实的未来趋势,增强现实是备受关注的领域之一,主要是利用计算机生成数据来增强现实、真实世界环境的体验.

HTML5未来发展的六大趋势

- 1625 - 互联网的那点事
HTML 5从根本上改变了开发商开发Web应用的方式,从桌面浏览器到移动应用,这种语言和标准都正在影响并将继续影响着各种操作平台. 在移动领域,大家争论不休的一个问题就是开发Web应用还是原生应用. 而随着HTML 5标准的发展,两者之间的差异已经逐渐变得模糊,今天各大媒体都争相报道与HTML 5有关的东西,那么,HTML 5未来的发展趋势到底是什么.

Spark的现状与未来发展

- - 逸言
对于一个具有相当技术门槛与复杂度的平台,Spark从诞生到正式版本的成熟,经历的时间如此之短,让人感到惊诧. 2009年,Spark诞生于伯克利大学AMPLab,最开初属于伯克利大学的研究性项目. 它于2010年正式开源,并于2013年成为了Apache基金项目,并于2014年成为Apache基金的顶级项目,整个过程不到五年时间.

资深工程师教你如何在股市中用量化交易看见未来

- - 外刊IT评论
编者按:本文来自点融网旗下微信公众号点融黑帮(微信号:DianrongMafia),授权 36 氪发布. 作者程司雷,现任点融贷款业务团队软件工程师. 曾在美国国家仪器有限公司、兴业银行总行科技部工作多年. 如何能在风云变幻的金融市场获得稳定的收益,如何在追涨杀跌中克服人性的贪婪和恐惧,一直是无数个人投资者们津津乐道的话题.

谷歌Google Docs离线使用 着眼未来发展

- Feilong - cnBeta.COM
据国外媒体报道,谷歌即将解决Google Docs与Google App的一项重大缺点:网络离线时无法使用这些服务. “我们将会让Google Docs在今年夏季可离线使用” Chrome的资深副总裁孙大信桑达日前在谷歌I / O的研讨会上表示,“我们内部已经在使用,它将很快实现.

苹果公司未来的发展趋势

- ItTalks - 雷锋网
编者注:本文原作者为大名鼎鼎的Wordpress的开发者Matt Mullenweg. 首先说明一下,我并没有任何的内幕消息,也没有超凡的预知未来的能力,但通过观察苹果产品的发展历程,多少可以看到其未来的大致走向. 个人认为苹果公司在接下来的几十年将主要侧重以下六方面,按优先级从高到低依次为:地图、iCloud服务、支付、电视、搜索和汽车.