雇用全栈开发人员值得吗?

tech2023-05-31  48

Full stack developers are somewhat mythical figures in the tech world.

全栈开发人员在科技界有些虚构 。

Most developers spend their entire career specializing in one specific layer of the stack – yet full stack developers can, apparently, do it all? Where are these technological geniuses? And are they truly that talented?

大多数开发人员的整个职业生涯都专注于特定的堆栈层,但是,全堆​​栈的开发人员显然可以做到这一切吗? 这些技术天才在哪里? 他们真的那么有才华吗?

The answer to the first question, of course, is in the world, like everybody else. But the answer to the second question – are they truly that talented? – is more complicated.

当然,第一个问题的答案和其他世界一样,在世界上。 但是,第二个问题的答案–他们真的那么有才华吗? –比较复杂。

全栈开发人员确实存在 (Full Stack Developers Do Exist)

Full stack developers do, in fact, exist. However, you have to be careful when assessing the skills of a full stack developer. Being a good full stack engineer is not about familiarity; it’s about an intuitive and deep understanding of both front-end and back-end best practices and paradigms.

实际上,全栈开发人员确实存在 。 但是,在评估全栈开发人员的技能时必须小心。 成为一名优秀的全栈工程师与熟悉无关。 它是对前端和后端最佳实践以及范例的直观而深刻的理解。

Of course, full stack developers are capable of coding for every layer in the stack, and if they’re talented, they’ll do a good and thorough job of it. That requires a substantial amount of skill and a larger amount of experience.

当然,全栈开发人员能够为栈中的每一层进行编码,如果他们有才华,他们会做得很好而透彻。 这需要大量的技能和大量的经验。

That being said, however, a full stack developer’s work on the front-end will never compare to that of a front-end specialist, and that holds true for every layer of the stack. A full stack developer who is an expert in every layer of the stack is incredibly rare – the kind of genius you meet once in a lifetime. Granted, they exist, but they likely won’t be the full stack developer you’re hiring.

话虽这么说,但是全栈开发人员在前端的工作绝不会与前端专家的工作进行比较,并且对于栈的每一层都是如此。 一个全栈开发人员,是栈的每一层的专家,这是极为罕见的,这是您一生中遇到的那种天才。 当然,它们存在,但它们可能不会成为您雇用的全栈开发人员。

全栈开发人员不是独奏 (Full Stack Developers Aren’t a Solo Act)

And so, a full stack developer is less about expertise and more about breadth and knowing how the different elements of development interact with each other and come together to form a product.

因此,全栈开发人员对专业知识的关注程度较低,而对于广度的了解更多,并且了解开发的不同要素如何相互影响并共同形成一个产品。

This has its pros and cons. In Peter Yared’s article The Rise and Fall of the Full Stack Developer, he points out how development has gotten far more complicated in recent years, and that a full stack engineer won’t cut it anymore. Given the complications of development, an expert is required at each layer in the process.

这有其优点和缺点。 在Peter Yared的文章“全栈开发人员的兴衰”中 ,他指出了近年来开发如何变得更加复杂,并且全栈工程师不会再削减它了。 考虑到开发的复杂性,在过程的每一层都需要专家。

The flaw in Yared’s piece, however, is that he takes for granted a common misconception surrounding the full stack developer – that you don’t need a team if you hire a full stack developer.

然而,Yared作品中的缺陷在于,他认为围绕全栈开发人员存在一个普遍的误解-如果雇用全栈开发人员,则不需要团队。

This statement isn’t entirely false, but it only applies to young startups that are on a tight budget and building a minimum viable product. For that specific scenario, a full stack developer is a great choice. But once the product grows and becomes more complicated, a full stack developer will need support from a team of developers with expertise in specific areas.

该说法并非完全错误,但仅适用于预算紧张且正在开发最低可行产品的年轻初创公司。 对于该特定情况,全栈开发人员是一个不错的选择。 但是,一旦产品增长并变得更加复杂,全栈开发人员将需要具有特定领域专业知识的开发人员团队的支持。

In all fairness, Yared does address this in the closing paragraphs and phrases it succinctly:

公平地说,Yared确实在结尾的段落和短语中对此进行了简要说明:

it is critical to have at least one person with at least a functional understanding of each of the composite parts who is also capable of connecting various tiers and working with each expert so that a feature can actually be delivered.

至关重要的是,至少要有一个至少对每个组成部分有功能理解的人,而且他们还能够连接各个层次并与每个专家一起工作,以便可以实际交付功能。

And here’s where we get to the meat of the full stack developer’s role in modern development.

在这里,我们了解了全栈开发人员在现代开发中的作用。

T形显影剂 (The T-shaped Developer)

When thinking of a full stack developer, it’s useful to consider Mike Loukides' description of a “T-shaped developer”.

在考虑全栈开发人员时,考虑Mike Loukides对“ T形开发人员 ”的描述会很有用。

The T-shape describes a general full stack engineer’s skills. These developers are typically highly skilled in one or two areas (the vertical line), but they then have a broad reach of knowledge and understanding of different areas of development (the horizontal). And it’s this broad knowledge that makes the full stack developer such an important part of the team.

T形描述了一般的全栈工程师的技能。 这些开发人员通常在一个或两个领域(垂直线)具有很高的技能,但是他们对不同的开发领域(水平线)拥有广泛的知识和了解。 正是这些广泛的知识使全栈开发人员成为团队的重要组成部分。

项目与沟通不畅 (Projects and Poor Communication)

It’s no secret that many projects fail because of poor communication – whether it causes delays, budget increases, or a poorer final product.

众所周知,许多项目由于沟通不畅而失败,无论是造成延迟,预算增加还是最终产品质量下降。

Often, bad communication can be caused by a lack of understanding between different development teams. Say, back-end developers want to build a framework ideal for their databases, but the framework creates new difficulties for the designers.

通常,不同开发团队之间缺乏了解可能导致沟通不畅。 可以说,后端开发人员希望为他们的数据库构建理想的框架,但是该框架给设计人员带来了新的困难。

These problems come up when specialists don’t understand what the other layers of the stack need to be functional and successful.

当专家不了解堆栈的其他层需要什么才能发挥作用并取得成功时,就会出现这些问题。

全栈开发者营救 (Full Stack Devs to the Rescue)

Here’s where a full stack developer can be a key player in your development team. Full stack developers understand most of the processes going on in the app’s development and also have a thorough understanding of the business and audience the project is for.

在这里,全栈开发人员可以成为您的开发团队中的关键角色。 全栈开发人员了解应用程序开发中正在进行的大多数流程,并且对项目所针对的业务和受众有透彻的了解。

As a result, full stack developers work better with a team because they know what tools the other team members are working with and what they need to accomplish. This ability to be a cross-functional team member makes full stack engineers great additions to agile development teams.

因此,全栈开发人员可以更好地与团队合作,因为他们知道其他团队成员正在使用哪些工具以及需要完成什么工作。 作为跨职能团队成员的这种能力使全栈工程师成为敏捷开发团队的重要补充。

Not only do full stack developers work better with a team, but in many ways developers who understand the full stack are going to build better applications because the parts they build will function better within the context of the whole.

全栈开发人员不仅可以更好地与团队合作,而且在很多方面理解全栈的开发人员都可以构建更好的应用程序,因为他们构建的部分将在整体环境中发挥更好的作用。

Another benefit of having a full stack developer on your team is that they’re a good fit for positions in project management. With a working knowledge of so many parts of development, full stack engineers can effectively manage a team of developers and make sure their components are progressing at a reasonable rate, and that they’ll function within the context of a whole.

在团队中拥有全职开发人员的另一个好处是,他们非常适合担任项目管理职位。 掌握了开发的许多部分的知识后,全栈工程师可以有效地管理一组开发人员,并确保其组件以合理的速度进行开发,并确保它们可以在整个上下文中运行。

结论 (Conclusion)

So, should you hire a full stack developer? If you’re a young startup trying to build your product, or a larger business who needs a team member to create cohesion and communication channels among your developers and their code, then the answer is Yes.

那么,您应该雇用一个全职的开发人员吗? 如果您是一家尝试构建产品的年轻初创公司,或者是需要团队成员在开发人员及其代码之间建立凝聚力和沟通渠道的大型企业,那么答案是肯定的。

翻译自: https://www.sitepoint.com/is-hiring-a-full-stack-developer-worth-it/

相关资源:jdk-8u281-windows-x64.exe
最新回复(0)