这听起来可能太大胆了,但是:
我相信只要有超过 8 年或 10 年的 Web 开发经验,都可以称自己为“全栈开发人员”。
如果他们是充满激情的专业人士,就不可能没有参与过他们负责所有事情的多个个人或其他项目。
他们不可能从未为朋友或亲戚创建过网站。
他们不可能不被诱惑通过副项目赚取额外的钱,因此,他们自己创建了一个简单的在线商店或文档。
问题是:
我们能否设定一个目标,跨越这些年的随机实验或紧急情况,使我们成长为多维专家?
我觉得完全有可能……
通过适当的计划和集中的努力,如果他们不是 Web 开发新手,则可以在几个月内实现它。
但…
因为这是一个完美的职业转变,尤其是当您感到无聊或筋疲力尽时,通过这样做,您将进入一个令人兴奋的新领域,从事各种各样的工作!
例如,我花了一周时间创建了一个浏览器扩展。它主要供个人使用,但我将它提交给了 Chrome 的网上应用店,因为——谁知道呢——也许其他人也会发现它有用。
提交后,我立即在社交媒体上谈论了扩展,我的一位联系人告诉我他们也有一个想法。所以,我非常接近获得一个商业项目。
另外,事实证明,创建浏览器扩展对我来说很令人兴奋……
而且真的很清爽。
我使用相同的旧 JavaScript、HTML、CSS 和 React.js,但感觉就像是一项新活动,您可以在其中探索什么是可能的以及如何获得最佳结果。
太奇妙了!
在前端和后端任务之间切换也令人耳目一新。他们都为您提供独特的挑战。因此,如果您遇到了死胡同,您可以休息一下并从事其他工作。
成为一名全栈 javascript 开发人员值得的原因还有很多,但这些是我现在能想到的最重要的原因。
好吧,这绝不会在一夜之间发生……
这不像您决定和跳跃 - 您现在可以编辑您的 LinkedIn 个人资料并改变您的职业。
它需要工作……
而且需要时间……
但是如果你想尽可能快地完成过渡,那么你可以通过战略性地安排你如何度过你的日子来缩短这个过程。
可以帮助您的三个主要方面是:
一种捷径是学习一些面向全栈开发人员的 JavaScript 框架和库。使用 Next.Js 或 Remix 是进入这个世界的绝佳第一步。
如果您是前端开发人员,您将被迫考虑容器化、API、数据库存储、缓存和您构建的应用程序的业务逻辑等问题,但无需考虑后端开发的一些复杂性,因为这些框架带有随时可用的组件。
如果您是一名后端开发人员,您将不得不考虑像素完美设计、响应能力、CSS&SCSS、API 调用、组件生命周期等等,但同样 - 没有一些复杂性,因为 -配置的捆绑器、linters 和其他前端组件。
像 Next.Js 这样的框架是完美的介绍。
在我看来,采用新技术的最佳方式是将学习与实践相结合。我什至不记得上次我读到一些很酷的东西并且没有通过试验来学习它(又名“让我们把它放在我的网站上看看会发生什么”)
为了学习 Next.js,我创建了BuhalBu.com ……
为了学习 Tailwind CSS,我创建了一个名为 Darky 的模板……
为了学习如何创建浏览器扩展,我创建了Code Aficionado 。
每次我采用新技术时,我都是通过从事一个副项目来实现的。
并不是说我在工作时间从来没有学到任何新东西,但通常情况下,你在那里有一个严格定义的堆栈,没有太多的实验空间。
所以如果你想要一个无压力和有趣的环境成为一个全栈开发者,那么你需要启动一个副项目。
好吧,有时候这很难接受……
但为什么不找一份入门级的工作呢?
基本上,您将获得报酬来学习,并且您将能够将所有时间投入到这项令人兴奋的工作中。如果你是一个体面的后端或前端开发人员,我保证你不会在那个级别停留太久。
一旦您表现出信心并开始获得新应用程序的域,您将很快得到提升,因为您不是从头开始。
您已经了解 HTTP 请求的生命周期、服务器和浏览器的工作方式以及与所有 Web 开发相关的更多常识。
一些聪明的裤子喜欢嘲笑全栈开发人员,但通常,前者是只有几年经验的新人。
他们无法在精神上处理需要多少时间和精力......
此外,他们认为网络开发是在他们找到第一份工作之前发明的。
更糟糕…
有些是完全没有激情或野心的“老狗”,他们在 5 点之后从不编码。
我从未见过一个真正的、充满激情的 Web 开发人员不是多维专家,对与其工作相关的各种主题感兴趣。
因此,最终采用全栈是 JavaScript 编码人员的命运。