什么是全栈工程师(机电全栈工程师)( 二 )


互联网公司越大,程序员越机械,在软件开发流水线上做着增、删、查、改的螺丝钉工作 。但这些人都是通过了“面试造核弹”的筛选才入职的 。技术专家越高,水货的可能性越小 。同样,他也不可能成为小公司要求的全栈开发 。凡事都会有一点结果,但没有什么是精的 。
产品规模上去后,每个模块的复杂度都很大,整个栈可能都不合适 。产品规模上去后,有些项目就要拆分出来,由专人维护,整个栈的存在意义不大 。大公司讲究的是专门的人员,你可以做好自己的事 。即使你离开了,找人代替你也是相对容易的 。
“所以你去挖一个阿里P8成为你公司要求的全栈是不现实的 。你就算把癫痫病挖出来也解决不了这个问题 。”
那家小公司的技术怎么样?
2面向小型公司的全栈开发
“一提到‘全栈开发工程师’,大家的印象肯定是:此人大神!我懂很多技术,前端后端都很精通 。不掌握七八门语言,我都不好意思打招呼 。我知道所有热门的专业术语,我也知道其中的一些 。我可以和大家谈笑风生 。”
对,对,这就是我们想要的!
“但是,全栈工程师更像是一个神话 。每个人的精力都是有限的 。你需要人精通前后台,会写代码,会测试运营,会写网站,会写app 。为什么不上天堂?”

以上是一个全栈工程师应该掌握的不完整的技术栈 。你可以先查一下自己离全栈还有多远,然后再想想全栈工程师到底是梦想还是现实 。这就好比不管技术更新与否,智能手机的更换周期一样 。现在上图所示的技能表,每年都会给每一层增加新的组件,每隔几年就会增加新的层 。全栈,一定要全部过来吗?
全栈工程师,某种程度上更像金庸小说里的慕容复 。刚出场的时候很牛逼,什么都懂,自带光环 。后来随着剧情(生意)的发展,剧情一落千丈,被武林同道嘲笑 。
其实创业公司一般更喜欢招全栈,这跟创业公司的需求有关,因为创业初期的公司可能需要一个人做几个人的工作 。另外,可能老板是技术出身,知道连接部门的巨大沟通成本,所以倾向于沟通单位少 。
对于个人和公司来说,全栈的定义是不一样的 。当初公司肯定是希望全栈的技术广度和深度能刚好满足公司的业务需求 。本质上,它只是想要一个完整的堆栈 。但对于个人来说,大部分普通人的时间和精力有限,很难做到广度和深度都很专业 。如果只是为了满足公司的需求,技能点的后果就是项目开发出来后,公司有钱了,差不多就该把整个栈都扔出去了 。
对于创业公司来说,为了抑制成本,整个堆栈需要完全可以理解 。毕竟好的程序员不便宜 。一个人做两个人甚至三个人的工作,似乎是控制成本的好办法 。但是,显性成本是可控的 。隐性成本呢?
“你有没有想过?当你的项目到了关键时刻,比如上线了,或者上线了一个bug,这个时候分分钟就是几千万流水,你的技术团队由于缺乏专门的人员出现了问题 。你急忙去找你的全栈CTO,他却说,你等一下,我去栈溢出看看是什么故障 。你是不是坏了?”
哦...
“栈溢出会很好 。如果他是百度编程的全栈,你只会哭 。”
再者,对于一个复杂的项目,如果一个全栈走了,项目会受到很大的影响,你很难再招到另一个与项目完全匹配的全栈 。我们见过太多创业公司因为关键技术团队成员的离职而直接导致项目失败的案例 。越是想存钱,越是存不下 。
听到这里,为什么觉得整个一叠都那么不好看?
“不,不,不..你们这些老板总以为都是写代码的,前端和后端没什么区别 。Java和Go没什么区别,这本身就是最大的误区 。全栈工程师肯定有自己的意义,但是如果你想让全栈工程师什么都做,996没有你这么残忍 。全栈工程师可能是未来的一个发展趋势,但现在那些简历上写着全栈的程序员,大概率就是你所认为的水货 。”
所以综上,他不是水货P8,我是水货CEO?


推荐阅读