全栈工程师可以理解为全能工程师,啥都会(这是我的大白话),也可以叫全端工程师,就是同时拥有前端开发技术及后端开发技术,既能写前端代码,又能写后端代码,能够独立完成产品研发的人。全栈工程师的英文名称是Full Stack developer。

g.jpg

---来自百度百家号[上世是朵花]---

全栈工程师产生的背景

全栈工程师就是一个市场需求的产物,有需求就产生对应的工种,在一些小的创业公司,做软件产品的,由于资金有限,不愿意招聘过多的程序员来研发产品,基本上都是每个工种招1到2个能够满足业务需求就行了。可是要想做成一个软件,起码需要一个产品人员,一个设计师(也可以叫美工),一个前端开发工程师,一个后端开发工程师,一个软件测试人员,一个系统维护的运维人员。如果这么细分的话,对于一个小公司显然是成本太高了呀,况且软件这行工资是比较高的,大家都是知道的。如果这么把工种细分下来后会造成每个人干的活也不多,还为每个人发着高薪,公司显然是赔大了,因为小公司产出不需要太多,不像大公司。因此聪明的创业老板们都想着能不能找到一个全能型的人才来为公司服务。因此便有了全栈工程师。

全栈工程师的优点与缺点

优点

减少了沟通时间,降低了沟通成本,提高了开发效率。由于前后端,甚至产品的业务,都有一个人来负责完成,就不需要沟通,各个端的配合是100%的默契配合,这从很大程度上提高了开发效率。

生存发展的能力更强一点,也就是路子更宽一点,如果只是单一技能的话,在公司里一单业务变更,很容易丢失饭碗,如果技能宽泛一点,就是这项技术不吃香了,还有其他技术来担保,减少了失业的风险。

缺点

由于人的精力有限,全栈工程师是横向发展,做不到纵向深耕,在某个领域不是那么专业,在面试的时候很容易被打不及格,特别是一些大公司。

全栈工程师只是能完整的做一个软件产品,但是对于大一点的项目,他的精力就是有限的,如果做一个大的项目,一个人单打独斗会大大延长了项目的开发周期,即使一个人把这个项目完成了,后期用户量上来了,出现了各种性能问题,各种系统的疑难杂症,全栈工程师由于专业深度上能力有限,也是很难搞定这些系统的性能问题。

2.jpg

所以对全栈工程师的建议是,最好是在自己知道的领域内,选择一个领域进行深耕,达到专业程度,这样来说保证了自己技术领域广度的同时,也保证了某一个领域的深度,只有这样才能保证在这高度竞争的社会更具有竞争力,为自己的前途多了一份保障。
感觉描述的好有道理。什么都行,什么都不行。

标签: 全栈工程师, 全端工程师

已有 2 条评论

  1. @子渔: 老骥伏枥,志在千里嘛。

  2. 不过就是以前行业没有细分的产物,你直接承认我们老了不行么?嘿嘿……
    屮,验证码会被输入提示遮挡,给禁一下呀。

评论已关闭