上面是我打开百度百科,写着对全栈工程师的解释:是指掌握多种技能,可以胜任前端和后端,能用多种技能独立完成产品的人。
对于这个答案我是保持观望的态度。如果说能同时开发前端和后端,还能独立完成产品,它就是全栈工程师的话,那计算机专业的大学生做完毕业设计之后就都是全栈了。
对于百科的这个定义,我感觉确实有点宽泛了,于是我就重新编辑了这个百度百科:
小伙伴们可能不知道百度百科是可以随意编辑的,我整整花了一分钟的时间,精心编辑了一个百度百科的概念:全栈工程师是指在web项目开发中,独立掌握web前端、安卓开发、ios开发、后端技术(Java,PHP,Node,关系型数据库,分布式开发等技术)的综合性、高素质软件工程师。 目前为止这个词条的审批还没有通过。
再回到全栈工程师这个称呼上,我第一次听到这个词是在2015年,那时候前后端分离的开发模式刚刚开始被普及。因为2015年之前的web开发项目,前端几乎都是用模板套jQuery来做的。像ember、backbone、angularjs这些框架,小公司几乎用不起来。
但是在2015年这个节点,web项目井喷式地增长,像react这样新兴的轻量级框架,开始走进了中小公司。前后端分离的开发模式也越来越多的被大家使用起来了,在这个技术背景之下,全栈工程师这个词被提的就越来越多,而被称为全栈工程师的人主要分成以下三类。
第一类:
在公司的技术部门独挡一面,被同事称为问题终结者 或者是bug收割机,这样的全栈工程师其实也是所有对技术追求的程序员而奋斗的目标,我确实很佩服这样的全栈。
第二类:
主要分布在中小公司,名头是【全栈工程师】,其实是【全干工程师】。小公司为了节约人力成本,前后端就找一个人干,甚至可能一个公司就一个程序员把所有的活都干了。
各种的压榨劳动力,然后还给了一个好的名头(全栈工程师),没事再画画饼,说公司上市之后,你就是技术总监,然后享受各种股份,期权,你就财富自由了。现实情况就是你累倒了,老板财富自由了。
但是在2015年前后那个时候大家还是很吃这一套的,所以很多人愿意天天加班,最后大多数人也是什么也没得到。现在大家看招聘网站上,小公司招聘的全栈工程师基本都是这个套路:
就是说想用更少的钱去招人干更多的活,这工作基本上干起来就是一地鸡毛。
第三类:
相比上面的【全干工程师】,这一类才坑,培训机构。借着【全栈工程师】的这个名号忽悠大学生。比如一个机构,它以前是教java的,后面就加了点前端的课程,又或者以前是教前端的,然后加了点Node课程,就说我们是全栈工程师培训机构。
许多学生们纷纷交钱报班,等毕业了才知道自己学的这个【全栈工程师】只能去小作坊企业,996公司,或者是去一些非软件,非互联网干一些辅助工作。
总结:
真正正规的软件公司或者互联网公司都是专人专岗的,就算它招了全栈工程师,也是高新的技术专家,怎么可能招一个培训班刚毕业,包装2年工作经验的职场新人呢。所以大部分情况下,我确实不太喜欢全栈工程师这个岗位(称呼),因为这个词总是能和【忽悠大学生】,【压榨劳动力】这些联系到一起。