什么是全栈工程师
发布网友
发布时间:2022-04-20 01:11
我来回答
共8个回答
热心网友
时间:2022-03-30 15:40
前端工程师:在打开一个网站时,屏幕上的一切都属于前端。前端工程师负责创建用户界面背后的代码。这些工程师不仅要熟悉HTML、JavaScript与CSS,还要掌握很多框架。这些框架有Foundation、Angular JS、Ember JS、Backbone及Bootstrap等等。前端工程师要与设计师和其他专家协同工作,从而将网站从模型转换为可使用的模式。
后端工程师:在你每天所访问的网站背后有服务器网络、数据库以及各种应用,他们相互协作将你所请求的网页与数据传递给你。后端工程师负责构建这些组件。他们要擅长各种编程语言,如Python、.Net、Ruby、Java及PHP等等,从而通过这些语言来编写程序。他们还需要使用各种数据库程序如MySQL、SQL Server及Oracle等来操纵信息并将其传递给最终用户。后端工程师需要与组织中的各种经理及其他成员通力配合来完成工作。
全栈工程师:全栈工程师既要了解后端开发,也要了解前端开发。他们是“全方位”的工程师,熟悉服务端的同时又懂客户端用户体验。全栈工程师理解Web开发进程的每一个方面,同时又会就整体策略与最佳实践对相关干系人提出建议与指导。
热心网友
时间:2022-03-30 16:58
全栈工程师,也叫全端工程师,英文Full Stack developer。是指掌握多种技能,并能利用多种技能独立完成产品的人。
如何成为全栈工程师?
a全局性思维
现代项目的开发,需要掌握多种技术。互联网项目,需要用到后端开发、前端开发、界面设计、产品设计、数据库、各种移动客户端、三屏兼容、restFul API设计和OAuth等等,比较前卫的项目,还会用到Single Page Application、Web Socket、HTML5/CSS3这些技术以及像第三方开发像微信公众号微博应用等等。
Web前端也远远不是从前的切个图用个jQuery上个AJAX兼容各种浏览器那么简单了。现代的Web前端,你需要用到模块化开发、多屏兼容、MVC,各种复杂的交互与优化,甚至你需要用到Node.js来协助前端的开发。
所以说一个现代化的项目,是一个非常复杂的构成,我们需要一个人来掌控全局,他不需要是各种技术的资深专家,但他需要熟悉到各种技术。对于一个团队特别是互联网企业来说,有一个全局性思维的人非常非常重要。[1]
b.善于沟通
项目越大,沟通成本越高,做过项目管理的都知道,项目中的人力是1+1<2的,人越多效率越低。因为沟通是需要成本的,不同技术的人各说各话,前端和后端是一定会掐架的。每个人都会为自己的利益而战,毫不为已的人是不存在的。
而全栈工程师的成本几乎为零,因为各种技术都懂,胸有成竹,自己就全做了。即使是在团队协作中,与不同技术人员的沟通也会容易得多,让一个后端和一个前端去沟通,那完全是鸡同鸭讲,更不用说设计师与后端了。但如果有一个人懂产品懂设计懂前端懂后端,那沟通的结果显然不一样,因为他们讲的,彼此都能听得懂。
c.创业公司
对于创业公司来说,全栈工程师的价值是非常大的,创业公司不可能像大公司一样,各方面的人才都有。所以需要一个多面手,各种活都能一肩挑,独挡多面的万金油。对于创业公司,不可能说DBA前端后端客户端各种人才全都备齐了,很多工作请人又不饱和,不请人又没法做,外包又不放心质量,所以全栈工程师是省钱的一妙招。虽然说全栈工程师工资会比一般的工程师会高很多,但综合下来,成本会低很多。
热心网友
时间:2022-03-30 18:33
全栈工程师,也叫全端工程师(同时具备前端和后台能力),英文Full
Stack
developer。是指掌握多种技能,并能利用多种技能独立完成产品的人。
【价值】
一、全局性思维
现代项目的开发,需要掌握多种技术。互联网项目,需要用到后端开发、前端开发、界面设计、产品设计、数据库、各种移动客户端、三屏兼容、restFul
API设计和OAuth等等,比较前卫的项目,还会用到Single
Page
Application、Web
Socket、HTML5/CSS3这些技术以及像第三方开发像微信公众号微博应用等等。
Web前端也远远不是从前的切个图用个jQuery上个AJAX兼容各种浏览器那么简单了。现代的Web前端,需要用到模块化开发、多屏兼容、MVC,各种复杂的交互与优化,甚至你需要用到Node.js来协助前端的开发。
所以说一个现代化的项目,是一个非常复杂的构成,需要一个人来掌控全局,它不需要是各种技术的资深专家,但它需要熟悉到各种技术。对于一个团队特别是互联网企业来说,有一个全局性思维的人非常非常重要。
二、沟通成本
项目越大,沟通成本越高,项目中的人力是1+1<2的,人越多效率越低。因为沟通是需要成本的,不同技术的人各说各话,前端和后端是一定会掐架的。每个人都会为自己的利益而战,毫不为已的人是不存在的。
而全栈工程师的沟通成本几乎为零,因为各种技术都懂,胸有成竹,自己就全做了。即使是在团队协作中,与不同技术人员的沟通也会容易得多,让一个后端和一个前端去沟通,那完全是鸡同鸭讲,更不用说设计师与后端了。但如果有一个人懂产品懂设计懂前端懂后端,那沟通的结果显然不一样,因为他们讲的,彼此都能听得懂。
三、创业公司
对于创业公司来说,全栈工程师的价值是非常大的,创业公司不可能像大公司一样,各方面的人才都有。所以需要一个多面手,各种活都能一肩挑,独挡多面的万金油。对于创业公司,不可能说DBA前端后端客户端各种人才全都备齐了,很多工作请人又不饱和,不请人又没法做,外包又不放心质量,所以全栈工程师是省钱的一妙招。虽然说全栈工程师工资会比一般的工程师会高很多,但综合下来,成本会低很多。
热心网友
时间:2022-03-30 20:24
在我看来,所谓“全栈“是一个没有确定意义的动态概念;至多说明“此人比较胜任自己目前所从事的工作,相关领域都能插上一手”罢了;一旦领域换了或者要求提高了,对“全栈”的要求自然大不相同。因此,谈论一名工程师是否“全栈”是没太大意义的:“全栈”应当是一名有追求的工程师在某个职位上对自己的要求,并不是一个头衔。
比如说我吧。最初使用PB做项目;玩着玩着,从动态界面生成、显示效率优化到数据库调优就全都能插上手了;然后,基于自己对底层知识的理解,还能用PB玩一些黑科技,实现官方没有提供支持的功能(用俺同事的话说就是“你都玩到圈外面了”)。
甚至,我还直接和客户方技术人员交流,修补了很多过去需求调研时留下的坑(被客户评价“够半个XX工程师”、“[去做他们行业的工程师] 日常问题应该没有能难倒你的了”),然后自己设计方案、制定计划并成功完成;之后这个软件才通过客户验收。
你看,从需求调研到方案设计;从数据库设计到网络通信协议制定再到后台逻辑、软件界面……这差不多算全栈了吧?
后来用C/C++做项目,然后就知道了内存屏障、cache、分支预测,知道了模板推导、编译期计算;于是开始学着去写能讨好CPU的代码……埋头底层N年,逐渐熟悉了linux环境。
于是,往下,改过linux kernel mole、挖过tcp/ip协议栈、查过各种加密/验证算法/体系的底细(不能说了如指掌,但清楚其来龙去脉、自己也亲手实现过一些核心算法);中间,玩过apache/nginx/django,用C写过cgi页面,折腾过hadoop/gluster;上层嘛,用gtk/wpf等等都写过界面,用脚本写过自动探测机器硬件然后自动裁剪linux kernel生成最小化系统的东东,用python+django实现过自己的oauth2页面(当时oauth2刚刚推出,还没有现成实现可用)……
从kernel一口气玩到web页面,从C折腾到js……随便哪个环节都能掺乎进去,也都搞出过商业软件。按照定义,这似乎也勉强能算“全栈”吧?
这个“全栈”和当初的“全栈”,含金量是否一样?
样样行,样样怂?您可千万别这样表扬我。
“样样怂“这个评价可谓恰如其分;”样样行“可实在是愧不敢当。
在我看来,所谓“全栈”,大概就是“自以为已经在自己所能接触领域的各个地方都留下过爪印”吧。
很遗憾。虽然的确经常自我膨胀;但有一点很清楚:我从未做到过“在所有地方都留下爪印”。各种意想不到的细节且不提它;比如各种加密算法背后的数学原理及其证明,其上覆盖的淤泥太深太硬:既然根本没有能力去挖掘它,凭什么在那里留下爪印呢?
更重要的是,很多地方我甚至都不知道其存在。
一旦跳出自己所熟悉的井口、被新鲜事物糊到脸上……所谓“全栈”就是个笑话。
所以,成为一个全栈工程师的体验就是:这只青蛙又进入了新一轮的膨胀周期,现在它迫切需要一块分量十足的“醒工砖”,否则很可能就要被困死在熟悉的井底了
热心网友
时间:2022-03-30 22:32
全栈(Full Stack)工程师,也可以叫全端工程师,无论是前端知识,还是后端架构你都要了解。甚至有些调皮的程序员这样理解全栈工程师:全栈工程师=屌丝战斗机=系统+网络+研发+dba+架构+安全=没女朋友、拿一份工资做三份事情的典型、每个站长都是一个全栈工程师,每个站群的站长都是超级全栈工程师。
热心网友
时间:2022-03-31 00:57
全栈开发者也就是全栈工程师,也叫全端工程师,英文Full Stack developer。
是指掌握多种技能,并能利用多种技能独立完成产品的人。
热心网友
时间:2022-03-31 03:38
全栈工程师也叫全端工程师,英文Full Stack developer,是指掌握多能技能,并能利用这些技能独立完成前后端开发的人群。现在大多数的互联网开发,需要运用到多种技术,包括前端开发、后端开发、数据库、界面设计、产品设计等,全栈工程师就是集这些技术于一身的人。
在大多数互联网初创公司中,因为一个项目设计到的环节很多,需要各种技术人才,考虑到人工成本的投入,所以需要一个能够独当一面的人,能解决各个环节的问题,各种活都能一肩挑,所以全栈工程师应运而生,因为会的技能多,所以相较单一的技术人员来说,薪资待遇要更高一些,这也是现在越来越多的人选择成为全栈工程师的原因。
全栈工程师除了拥有超高的技能以外,还要具备全局思想,因为一个项目的构成是很复杂的,需要全栈工程师来主控全局,并熟悉项目的各个环节,而且对于比较大的项目来说,一个人单打独斗会影响效率,所以说,虽然全栈工程师看似万能,但并不是钢铁巨人,有时候也需要团队人员的配合,一起完成项目。
由于全栈工程师的技术路子较多,所以生存能力也更强,在公司里,技能单一且具备很强替代性的人员,很容易丢失饭碗,而全栈工程师就要少一些这方面的担心,技能宽泛,放在哪里都能发光发彩。
热心网友
时间:2022-03-31 06:36
凡人要从一个小菜鸟成长为全栈工程师,只能从少到多、慢慢积累知识和经验。职业生涯的本质,就是在一个专业方向上积累信息。这里我推荐采用“先精后广,一专多长”的流程来学习。采用这种方式来学习,不光可以触类旁通、举一反三,还让我们学习得更快,而且循序渐进更符合一般人的职业生涯发展。
先精后广,一专多长
“先精后广,一专多长”是指,建议初学者学习全栈技能的时候,先在一个特定的方向上有比较深入的钻研,然后再将学习目标渐渐推广开来。比如先从前端方向入手,掌握了基本的HTML、CSS、JavaScript之后,不要转头向服务器端语言或者App方向发展,而是深入到性能优化、SEO、多种框架、响应式页面等前端细节中去。经过一到两年的深入研究之后,再去学习其他方向。