全栈正式宣告死亡

核心提示全文共3987字,预计学习时长12分钟来源:Pexels小芯认为是时候更新招聘职位说明和招聘方式来展现新的现实了:“全栈”不再是能帮助作者考量求职者的技能是否与岗位要求匹配的标准了。全栈的起源新世纪伊始,web工具发展迅速,如今已达到了仅用

全文3987字,预计学习时间12分钟。

来源:Pexels

肖鑫认为是时候更新职位描述和招聘方式了,以显示一个新的现实:“满栈”不再是一个可以帮助作者考虑求职者技能是否与工作要求匹配的标准。

整个堆栈的原点

新世纪伊始,web工具发展迅速,现在已经到了只能用开源工具组装网站的地步。基于OSI网络模型,我们将网络的每个独立部分称为一层,将层的集合称为一个堆栈。

LAMP stack是最早的栈模型,包含四层:L指Linux操作系统,A指ApacheHTTP服务器,M指MySQL数据库服务器,P指PHP脚本语言。随着时间的推移,WAMP、MAMP、XAMPP、LEMP、LEPP、MEAN、JAMStack等变体的出现也使得“层”的概念变得实用。

掌握了上面的栈,也就掌握了软件开发革命的关键。建立一个网站不再困难:人们只需要毅力和学习新工具、语言和协议的愿望,而不需要微软、甲骨文、IBM和其他供应商的帮助。这是一个公平的领域,所以吸引了很多人参与,造就了90年代末的投机网络时代。

很快,浏览器引入了AJAX,一种新型的网站变得可行,Web 2.0时代和网络应用随之而来。然而,这些新应用的开发需要巨大的工作量,单枪匹马的开发人员很难在截止日期前完成。、

专业化应运而生。前端开发人员负责处理HTML、CSS和Javascript。后端开发人员负责处理主机操作系统、HTTP服务器和数据库。擅长前端和后端的开发者称为全栈开发者。

全站时代

来源:Pexels

专业化是好事。这意味着开发团队可以前后并行工作,缩短开发周期。同时,这也意味着开发人员必须花费额外的时间来沟通最初的需求和后续的更改,否则并行工作将失去其优势。

所以,有一个不区分前后技能的全栈开发者团队,似乎是个不错的主意。

最大的好处是团队中的每个人都很清楚任何微小变化的后果。他们每个人都能恰当地评估风险,使管理层能清楚地了解项目成本和延误。更重要的是,如果员工离开,开发人员可以立即上来,继续高效工作。

但是随着技术的进步,整个栈已经不那么有竞争力了。堆栈中不再只有四层:初始操作系统、HTTP服务器、数据服务器和脚本语言。

为了应对前所未有的并行用户数量,需要不断改进程序,程序的复杂度增加。因此,添加了一个负载平衡器。

因为需要更快地配置新服务器并降低灾难性故障的风险。所以选择云计算。

由于需要为全球用户构建项目,我们开始将计划的部署复制到区域数据中心。

因为复杂的数据库架构和连接并不总是最佳的,所以使用键值存储。

雇佣一个专业的测试工程师来建立一个测试套件,以便更好地控制质量。

因为您希望浏览器控制呈现和合成,所以您从服务器端脚本改为REST APIs。

由于良好的代码管理对团队效率至关重要,Github用于创建工作流。

随着能力的不断提升,开发者开始更多的听取用户的意见:

用户希望应用程序包含更少的提交表单,更流畅,更易于使用,因此我们聘请了一位具有艺术天赋和人体工程学敏感性的用户界面专家。

用户希望顺利完成工作,所以我们聘请了用户体验专家来研究产品缺陷,创造更好的交互方式。

用户发现了手机的便利,这促使我们提供大型SaaS应用程序的移动版本。

技术的基础知识也在不断丰富:

HTML5已经成熟,涵盖了语义网络、可访问性、服务工作者和组件。

CSS是逐渐发展起来的,除了选择器和层次结构,还包含了变换、变量、新的布局模型和分页介质。

Javascript已经爆炸了,现在有了模块化、面向对象的类和异步函数,可以在任何地方用同一种脚本语言执行。

HTTP协议升级,有更好的缓存能力,安全策略,持久会话功能,头压缩功能,复用流和优先级。

全栈时代的终结,没有它泛滥那么严重。堆栈中的层数不断增加,导致没有人能够掌握所有方面。功能的多样化和专业化是必然的结果。

作为新文艺复兴的先驱,全栈工程师的传奇已经成为过去。在这个新时代,没有人能指望实现全栈。

020堆栈

这给我们留下了一个悬而未决的问题。拥有覆盖多个网络层的知识和技能的有才华的开发人员还有空间吗??如何适应全栈开发者给项目带来的各种混杂体验?管理层应该如何满足这些需求?招聘人员应该如何挑选潜在的求职者?求职者应该如何描述自己拥有的技能?

是时候重新考虑全栈这个术语了。

作者这么说可能有些矛盾,因为正是作者帮助普及了全栈的概念。这是作者2009年在full-stack.com对当时技术的看法。但遗憾的是,2019年,它只适合在计算机历史博物馆展出。

Google Trends 2009–2019 for the term

奇怪的是,人们似乎对“满栈”这个词越来越好奇。谷歌2009-2019年的趋势快照显示,在过去的五年里,这个词的搜索趋势大幅上升,每年都创新高。

如果这些搜索是为了找到下一个将替换整个堆栈的东西,那么接下来要讨论的是。当然,我们得给它起个名字,这样研究起来更方便。

作者称之为2020栈。这是一个新时代的新名字。

个人观点

来源:Pexels

首先要向那些擅长不同领域的开发者致敬。他们是不落入专业化陷阱的最大希望。我们要避免前沿发展的思路,要避免背诵秘咒的高手,要避免有专业化的铺天盖地的信息。

其次,我们应该承认这样一个事实,职业发展意味着人们来去匆匆。每个公司组织都必须将此视为正常运营的一部分,即使公司高层人员变动,业务也不能中断。也就是“没有谁是不可或缺的。”

第三,专业术语和行话会削弱专家之间的交流。在特定领域的专家中使用术语、缩写和习语会让自己和队友处于危险之中。有人说,“跨领域整合对沟通渠道的畅通至关重要。”

以下是全新2020堆栈专家的一些特性:

因为没有人能处理所有的事情,所以2020堆栈必须由一个团队来处理。不是由许多个人组成的团体,而是一个真正的团队。也就是说,当一个人拖后腿的时候,另一个人会帮他追上去。如果一个人掌握了更先进的技术,就有一个机制让他去指导别人。如果团队的知识储备有缺口,他们会寻找并雇佣更聪明的人。

到2020年,编程团队的每个成员都必须是跨学科的专家。任何只掌握了一两级技能的人都不是真正的2020编程团队的成员——这些人将来可能想也可能不想成为2020团队的成员。简而言之,除非他们已经深入掌握了很多层面的技能,否则他们只是2020年代编程团队的候选人。

220堆栈的成员为项目带来的技能集没有严格分类。与我们迄今为止采用的前/后端分类不同,2020 stack的分类是多方面的。020团队的成员可能拥有NoSQL、云配置和持续集成等技能。同时,另一个2020团队成员可能会SQL数据库、Node.js服务器、容器、编译等技能。简单地称他们为2020的后端开发者,未免过于草率。

最重要的一点是,每个人都应该抱着寻求解决眼前问题的最佳对策的意图进行交流。这意味着具有重叠技能的开发人员应该以开放的心态进行交流。不要只是通知同事新的进展,而是坐下来一起讨论。这样可以让大家更聪明,防止特殊化卷土重来。这叫共同成长。

你好,“2020栈”

来源:Pexels

下面我们来看看如何利用这一点来更好地匹配求职者的工作要求和技能。以下是项目经理为公司寻找合适人选时可能发布的招聘内容:

城市酿造公司正在寻找擅长测试、文档和代码管理的“2020 Stack”团队成员。申请人还应该至少在以下两个领域拥有技能:云配置、流程编排、CI/CD和服务器端脚本。

选择最合适的工具,共同塑造未来。在RCB,职业技能提升是工作的一部分。在每周的“技术星期二”上,与RCB 2020 stack团队的其他成员分享知识。

对于同一个职位,招聘人员也可能使用更具体的关键词,例如:

我们公司正在寻找一名“2020 Stack”团队成员,从事回归测试、API文档、Github工作流管理和开发管理工作。

如果你掌握了这些技巧,请联系我们。

以下是求职者可能会在linkedIn个人资料上展示的内容:

我是“2020栈”团队的一员。我有丰富的传统后端技术经验,也非常熟悉最新的2020开发管理。我是开源工具和DRY的狂热爱好者,坚信代码复用的成功取决于文档的质量。

上面的每个例子都显示了代码管理领域和开发实践领域的角色之间的明显联系。而且在每一个案例中,对“2020栈”的认可都表明,它扮演着比旧的所谓敏捷团队成员更复杂的角色。

层!层!层!

那么,这个新领域最明智的划分方式是什么呢?前端和后端这样的分类够清楚吗?服务器网络这个术语与设计和运行有何不同?当然,分类的方式太多了,不是吗?

但是我们不能忽视测试人员,因为没有他们的技能,公司的产品就会输给其他竞品。而如果市场上没有人才,公司甚至永远不会有客户。

上面只列出了2020栈的部分信息。至于你怎么划分你的技能等级,没有栈本身的等级重要。

来源:Pexels

新的2020堆栈是关于如何跨域通信的,这必将是新时代的复兴。

留言关注

我们一起分享AI学习和开发的干货。

如转载,请后台留言,并遵守转载规范。

 
友情链接
鄂ICP备19019357号-22