什么是全栈工程师(机电全栈工程师)
大厦新搬进来一家创业公司,老板红光满面地提着果篮上楼拜访,说是刚拿到了投资人的钱,正准备扩充团队大干一场。那个时候的他踌躇满志,顾盼生辉。当时我想,能在这个大环境下拿到投资的公司,做的产品应该是有前景的。
没想到几天后在电梯遇见时,却发现这位老板已经没有了往昔的风采,整天愁容满面。他在电梯看到我以后问道:"我记得你们是做技术媒体的吧,有个问题想请教一下。"
原来他烦心的症结在于:我们公司拿到投资以后,人员配置到位还算及时,业务扩张的速度还是挺快的。没过多久我们技术团队的人就跟我说,现在业务发展势头比较好,现有的技术架构快扛不住了,得招些技术牛人来团队负责整体架构规划、升级。
我不是搞技术出身的,以前总是在各种论坛上听说阿里巴巴的 P8、P9 多牛逼,技术多厉害,我就想这种级别的程序员应该可以满足我们的需求吧。于是我用年薪百万的 offer 砸了个阿里新升的 P8 来我们团队做 CTO,可是现在问题不仅没得到解决,反而更复杂了。技术团队的人觉得他名不副实,他觉得我们找他来是打杂的,干得也不开心,两头乱。
我问他,你们觉得他哪里不好?他只会写 Java,我们用 Go;
他只会搞后端,前端基本不懂;
他算法不太行,我们要做推荐;
他只会写 Web,我们要做 App;
他只晓得用开源工具,我们要造自己的轮子;
……
"那等于是他哪哪都不如你们意呗?"我问他。
对啊,我也没想到阿里 P8 这么水。
"可你一开始要招的不是可以给你们重构系统架构、偿还技术债的 CTO 吗?"
这……有啥区别吗?
"区别大了。你这又是要让前端后端都会,又是要精通各种编程语言,还要能搞移动开发,你这想要的是个全栈,而不是 CTO。哪有 CTO 干这些活儿的,你这是想让一个在大厂流水线上拧螺丝的人来给你把每个窟窿都堵上,不可能啊。"
合着我钱白花了呗?
"倒也不是白花了,BAT 这些大厂都有一套流程化的线上线下、开发管理机制,一般能升到 P8 的,碰到水货的可能性相对较小。你的问题是需求跟招聘方向不匹配,你要招的这是全栈工程师,人家大厂的技术专家是流水线作业,差别大着呢。你听我跟你分析分析。"
1 大厂程序员:流水线上作业的螺丝工
软件工程作为一个行业,发展至今已经有超过 50 年的历史。软件开发在互联网的数次浪潮冲刷下,已经是一个非常完备的成熟行业。在一线互联网公司,比如硅谷的 Google、Facebook、Amazon,比如中国的阿里巴巴、百度、腾讯等,其软件开发已经是一个成体系的流水线式作业。
就以前文提到的阿里巴巴为例,作为国内最有代表性的互联网企业之一,阿里巴巴的软件开发已经形成规模化的效应,直接体现在软件开发的模式上就是一条完备的流水线式作业。
流程化、规范化是大厂软件开发最大的特点。一次完整的需求开发流程是这样的:1. 需求预审、评审;2. 概要设计与评审;3. 测试用例撰写与评审;4. 开发;5. 测试与 bug 修复;6. 发布;7. 版本总结 / 项目过程总结。在这个过程中,每个开发人员都各司其职,拧着各自负责的螺丝。
很多新人在加入技术团队后,通常会有一个资深的员工作为师兄帮助其更快地融入工作、掌握相应的技术。一般而言,在开始阶段新人的任务都是从简单的程序开始写起,比如迁移部分系统代码(从上游系统迁移到下游系统),做一些简单的小需求(如修改 bug,增加某一个字段等)。
这些需求看似简单,实则不然。因为哪怕涉及一行的改动,都需要进行大量的测试进行覆盖,很多人以为这些都该是测试去做,但实际上,测试往往只能进行黑盒测试,而且测试对于代码的了解程序一定不如开发,所以在这些细节上的测试都是由开发自己自测完成。因此,往往改动一行代码,开发就可能都会花上半天的时间用各种方法进行测试。
不仅是测试,阿里技术团队在 2016 年左右开始了一次大的组织架构调整,即把日常的运维工作交给研发做。原来的 PE(Production Engineer)要么转岗去做工具平台开发,要么作为运维专家做产品规划和设计,还有一部分无法适应的只能黯然离开。这是阿里运维从工具化到自动化最重要的一个过程。
规模化、流程化、自动化,这几个关键字放在一起,你第一眼可能想到的是生产车间,但在阿里巴巴,这是其技术团队多年沉淀下的一个行之有效的软件开发模式。
阿里巴巴相对而言是一家业务驱动的公司,项目以业务优先,对于团队来说其重要性不言而喻。在阿里巴巴,这是一个需要多人开发,团队协作的事情。对于那些研发人数动辄超万人的大型互联网公司,要前端就找前端,要后端就找后端,规模化以后要求的不是全才,而是专才。
规模越大的互联网公司,程序员干的事情反而越机械,在软件开发的流水线上做着增删查改的拧螺丝活儿,但这些人,在入职前可是通过了"面试造核弹"般的筛选才进来的。越是高级别的技术专家,出现水货的可能性也越小,同样,他也不可能成为一个小公司需要的全栈开发。什么都会一点的结果,就是什么都不精。
产品规模上去以后,各个模块复杂度都很大,全栈未必适合,规模上去以后势必也要拆分一些项目出来,由专人维护,全栈存在的意义不大。大公司讲究专人专岗,你就做好自己那点事就得了,就算你离职,找到替代你的人相对也比较容易。
"所以你想挖一个阿里的 P8 做你公司需要的全栈是不现实的,你就是把行癫挖过来这问题也解决不了啊。"
那小公司的技术咋整?
2 小公司要的全栈开发
"人们一提起‘全栈开发工程师’,大家的印象肯定是:这号人啊,堪称大神!会很多技术,前端后端都精通,不掌握七八种语言都不好意思出来打招呼,热点技术名词全都知道,也都会点儿,跟谁都能谈笑风生。"
对对对,我们要的就是这样的人!
"但是呢,全栈工程师更像是一个神话。每个人的精力都是有限的,你需要人家精通前后端,自己能写代码还能做测试搞运维,能写网站还要能写 App,你咋不上天呢?"
以上是一个全栈工程师应该掌握的并不详尽的技术栈,各位可以对照着看看自己离全栈有多远,再想想全栈工程师是梦想还是现实。这还是在不考虑技术更新换代就像智能手机的更换周期一样的现在,上图所示的技能表每年每层都会增加新的组件,每隔几年又会增加新的层。全栈,你全得过来吗?
全栈工程师,一定程度上更像金庸小说里的慕容复,刚出场时牛逼哄哄,什么都会,自带光环。可后来随着剧情(业务)的展开,逼格直线下降,被武林同道所笑话。
事实上,创业公司一般比较喜欢招全栈,这和创业公司的需求有关系,因为创业初期的公司可能需要一个人做几个人的活。另外,可能老板是技术出身,了解部门之间衔接所需要付出的巨大沟通成本,所以倾向于更少的沟通单位。
对于个人和公司,全栈的定义是不一样的,初期公司肯定是希望全栈的技术广度和深度刚好能满足公司业务要求,本质上只是想要个全干。但对于个人来说,大多数普通人的时间精力有限,很难真正在广度和深度都做到专业,如果只是为了满足公司需求点技能点的后果就是——项目发展起来之后公司有钱了,全栈差不多就该扫地出门了。
对于创业公司而言,为了压制成本,需要全栈完全能够理解。毕竟一个优秀的程序员也不便宜,能让一个人干两人甚至三人的活儿好像对于成本控制是个好办法。然而,显性的成本控制住了,隐性的成本呢?
"你想没想过,当你的项目到了关键时刻,比如要上线了,或者上线出 bug 了,这时候分分钟就是几十上百万的流水,而你的技术团队因为缺乏专人出问题了。你急急忙忙地去找你的全栈 CTO,他却说:稍等,我上 Stack Overflow 查下这是什么故障。你崩溃吗?"
呃……
"会上 Stack Overflow 的还算好的,他要是个面向百度编程的全栈,你就只有哭的份了。"
再进一步,一个比较复杂的项目,如果一个全栈走了,项目受到的影响会很大,你很难再招到一个完全匹配该项目的另一个全栈。我们见过太多创业公司因为技术团队关键人物离职直接导致项目失败的案例,你越是想省钱,越是省不下钱。
听你这么说,怎么觉得全栈就这么不堪入目呢?
"非也非也。你们这些当老板的,总是认为都是写代码,前端后端没什么区别,Java、Go 没什么两样,这本身就是最大的误解。全栈工程师一定是有其存在的意义的,但你如果想让全栈工程师把什么事儿都全干了,996 都没你这么狠的。全栈工程师也许是未来的一个发展趋势,但现在那些简历上写着全栈的程序员,大概率才是你们认为的水货。"
所以总结下来,他不是个水货 P8,我是个水货 CEO 喽?
蓝筹股是什么意思(什么叫权重股?什么叫蓝筹股?)在股市中经常听到蓝筹股白马股等词。蓝筹股和白马股的区别是什么你们知道吗?1蓝筹股(BlueChips)是指稳定的现金股利政策对公司现金流管理有较高的要求,通常将那些经营业绩较好,具
双面胶痕迹怎么去除(双面胶的痕迹难清除?)双面胶痕迹怎么去除(双面胶的痕迹难清除?)双面胶在生活中运用比较广泛,为了将两样东西粘合得更加牢固服帖,所以双面胶比较薄,而且黏性很强。如果一件东西使用过双面胶之后,过后想将双面胶
wps怎么打印双面(a3合同双面打印方法)平时我们在阅读大量工作文件,或者是看小说学习一门专门的专业知识时,很多人都会喜欢看电子版的文档。但是,长时间对着电脑或者是手机看文档,不仅眼睛会容易感到疲劳,可能还是导致头疼,所以
复印机怎么用(复印机的使用方法步骤)现如今很多的设备在日常使用的时候,所带来的效果都非常不错。尤其是各种类型的办公设备,在实际使用时对日常工作有很大的帮助。可是在使用一些设备的时候也难免会出现一些问题,如果能够掌握一
网贷利率高向哪里投诉(哪里可以投诉网贷)来源今日惠州网在自助端申请贷款利率转化为LPR开立借记卡被捆绑开通手机银行对公账户长期未使用却产生多项收费315前后,消费者权益保护再次成为人们的焦点。日前,记者从惠州市金融消费权
网贷哪里去投诉(遇到黑网贷去哪里投诉)大多数人害怕网贷公司的原因是因为网贷公司会对我们进行电话轰炸,会给我们的工作生活带来不利影响,那么网贷公司到底怕什么呢?负债的朋友们我来告诉你,同时我也是全国负债人的其中一员。第一
网贷不能借钱了还能在哪里借钱(不上征信的网贷)花呗被接入央行征信系统了,相信大家应该都知道了吧。这事说大不大,说小还真的有影响。以前花呗逾期了,一次两次忘记还款,影响并不算大,大多是在支付宝体系中使用受阻而已。而接入后,如果再
西安市网贷利率在哪里咨询(不上征信的网贷)今天来跟大家讲一下如何正确的计算网贷的真实利率,其实在央行没有要求各贷款机构明示贷款利率并采取IRR的计算公式来计算利率之前,大多网贷平台的利率展示都是含糊其辞,什么日息万分之五,
网贷填写信息城市能查到在哪里么(不上征信的网贷)01hr验证手机号是否是实名,是否和申请人姓名一致。如果身份证跟手机号不匹配,100被拒!否则小贷将承担被骗贷的嫌疑。02检查手机号入网时长和号码使用情况,比如消费联系频次。一般来
网贷怎么知道你在哪里上班呢(不上征信的网贷)一平台是否合法运营公司主体是否合法(是否符合公司法相关规定)确定平台业务是否合规(高利贷红线年利率36)平台信息是否透明(合法平台会透明公司信息)并非所有的合法网上借贷平台都会上征
从哪里能查看网贷记录(不查征信的网贷有哪些)说起网贷大数据,非常多的撸贷用户都会认为自己已经是黑名单或者网黑网花了,但是如果真的让他们说什么叫网黑网花,黑名单,他们也说不出个所以然来。网黑,网花,黑名单,其实都只是指向一个评
童装有哪些(最有名的童装品牌)新时代的年轻父母,越来越重视小孩子的童装,对童装时尚的要求也越来越高。如果你家有宝宝,千万不能错过史努比品牌童装,它不仅仅是童装,更是童年的记忆。如果你们还不是很了解,不妨跟着小编
韩国车有哪些品牌(韩国高端车品牌)近期J。D。Power发布了最新的2021年美国汽车可靠性研究报告,根据品牌每100辆车出现的问题数量(PP100)所决定,数值越低代表着质量越优秀,网上车市据此梳理了三大韩系品牌
有哪些童装品牌(童装品牌排行榜)从5月24号晚8点开始,618的促销活动已在各大网购平台拉开帷幕。数据显示,今年天猫618期间,25万家品牌,为消费者带来1300万款商品,其中包括140万款首发新品。截止5月31
想找创业项目(想开店找项目如何找?)想找创业项目(想开店找项目如何找?)目前,做生意门槛最低的莫过于开店,适合很多新手创业者。但是,目前,创业项目众多给不少初创业者造成了选择性的困难。那么,想开店找项目如何找?下面给
企业概况怎么写(怎样写创业项目的理由)企业简介北京工程有限公司成立于2007年初,是一家集室内外装饰装修设备安装钢结构施工与设计为一体的建筑企业,同时具备国家建筑工程施工总承包资质建筑装修装饰工程专业承包资质,钢结构工
创业找项目看这里(创业去哪里找好项目)前面已经讲了什么是OTA酒店代理,接下来就讲讲OTA酒店代理到底怎样操作?1找房源通过线上线下对接酒店,现在基本上都是通过线上去跟酒店谈资源。优势是可以轻松找到酒店的领导。这就需要
网商贷在哪里还款(网商贷提前还款算利息吗)随着央行要求展示贷款年利率,花呗借呗微粒贷白条等互联网信贷产品都采取了行动,主动更改了贷款产品的利率展示方式。撰文张浩东出品支付百科前不久,央行发布公告,明确表示所有贷款产品均应明
网贷哪里去了(网贷不能正常还款登录不进去)随着物质水平的提高,人们的收入越来越可观,也更加注重享受。而且随着社会经济和互联网科技的发展,许多人的思想观念都发生了变化,大多数人都有超前消费的行为,而这种行为滋生了许多网贷平台
网贷还款清单哪里打印(网贷)4月21日,山西晚报记者从太原市住房公积金管理中心获悉,从4月20日起,太原市住房公积金缴存职工可以在网上自行打印贷款结清证明和还款明细。在太原市住房公积金管理中心办理住房公积金贷
支付宝里面的网商贷在哪里还款(网商贷怎么开通)随着互联网金融的发展,网贷已经成为了许多年轻用户离不开的消费工具,甚至在生活中买瓶水都已经习惯性地用花呗借呗的资金来支付,所谓花明天的钱提前享受当下的生活,这是非常可怕的一种现象,
网贷还款是扣哪里的钱(网贷钱没有到账叫还款)先来看看一个读者的提问以前我请教过关于网贷还款是按合同金额还是按实际借到手的金额还款的问题,也请教过别人,都告诉我说是按实际借到手的金额还款,但网贷平台的客服和催收,有的让我按合同