• 前端程序员应该往全栈方向发展吗?还是坚守前端?


    作者:寒蝉(知乎)

    顺便吆喝一声,技术大厂,内推捞人,前/后端or测试←感兴趣

    要求学历:全日制统招本科(非学院派即可):

    --加班偶尔较多,但周末加班两倍工资。

    --15-35K,工资在一线城市属于一般,但二线城市很可以。

    前端干了有四年多了,在我有限的认知内(认知就这么点,不要杠我,杠就是你对)和能力范围内所触及到的岗位种类中,前端这个岗位在我看来是最难坚守的。

    大多数初级中级的前端开发喜欢把自己限定在前端领域,不愿意去了解后端运维等其他方面的技术。

    我能理解这种安于现状的状态,但是,技术领域大环境是不断变化的。你要是大厂的螺丝刀那也说得过去,毕竟大厂的模式都是一个萝卜一个坑,小而专嘛。把自己的坑研就透了,也是领域人才了。

    但是大部分前端都只能在中小公司,那么这个螺丝钉就没有太大的价值了。尤其是想在职位和薪资上有所突破,仅靠前端这个小坑,再专精也是很难突破的。

    若是处在这种环境之下,你就需要拓宽自己的知识面,朝着全栈发展,为什么呢?

    从个人职业发展来讲,随着年纪增大,你最终需要从一个底层码农进化成一个提供解决方案的技术管理,你需要针对客户的需求提供一个解决方案,而如果你只在前端摸索就很难站在一个全局的角度去思考,如果你的知识面不够广,你是无法提供一个好的解决方案的,你见得少就听不懂别人在讲什么。

    其次从个人角度来讲,可以做做自己的个人项目,什么都懂才能把一个网站完整地做出来上线,别人有外包项目找到你,你也可以有这个能力接下来,所以单单懂前端是不够的。

    但是!!!想要把路走宽之前,一定要有一个拿得出手的技术。

    像我们前端的人,你就必须要把前端做得足够好,从前端的高处向后端延伸发展,这样你才能称自己是全栈,否则你就是啥都懂,但又等于啥都不懂。

    在当下,任何一家企业都需要前端开发,而且必不可少!

    当然,对于前端开发的要求也越来越高了。从2016年开始Node在国内火了,也意味着Node为JS提供了在服务端运行的环境,使得JS也能开发服务端的程序,前后端使用同一种语言,统一模型的梦想得以实现。这也是为什么这么多年优秀的前端开发薪资更高的原因。

    今天,前端开发"上天入地,无所不能"(吹嘘一下):PC端开发 、移动web开发、APP开发、小程序开发、服务端开发等。一个资深的优秀的前端开发工程师也叫做全栈开发工程师,这个时代也被叫做大前端时代。

    所以,我们就看到了今天的局面,前后端开发都在互相卷,横向卷,纵向卷,垂直卷,深度卷。卷来卷去都是冲着全栈工程师的发展方向。

    全栈工程师通常会经历技术蜕变,以适应不断发展的技术和市场需求。这种蜕变是不断学习和提高自己的过程。以下是一个典型的前端向后端学习发展全栈工程师可能会经历的技术蜕变阶段:

    1.初学者( Beginner):

    - 学习基本的编程语言和编程概念,如HTML、CSS、JavaScript

    -掌握基本的前端开发技能,能够创建简单的静态网页。

    2.前端开发者(Front-end Developer):

    -提高前端技能,包括JavaScript框架(如React,Anqular,Vue.is)的使用。

    -开始构建交互性强、响应式的前端应用程序学习基本的HTTP和网络通信知识。

    3.后端开发者(Back-end Developer):

    - 学习服务器端编程语言和框架,如Node.js、Python ( Django、Flask ) 、Ruby(Ruby onRails)等。

    -理解数据库设计和管理。

    -开始构建服务器端应用程序,实现数据存储和处理。

    已经在做前端的工程师们对于后端这些技术框架应该也不会陌生,但如果真让大家说出点什么,恐怕又说不明白。

    我们都知道常见的后端开发主要还是用Java,但如果从前端向后延伸发展,走node道路会更通顺些,毕竟不是彻底的转行,想要做到前后兼顾,甚至说随时回头,好好学node更有利于前端开发者的快速学习和发展。当然,也要结合自己公司或者目标公司的开发技术栈来决定。

    最近啃文档有点不耐烦,开始琢磨辅助性学习开发,琢磨了一下发现,让我搞成了趣味性学习。

    不想摸鱼太明显,我直接用了VScode自带的chatMoss,哪怕是领导过来了,还是有大半个代码页面部分展现给他,至于chatMoss内容框里有什么东西,领导是不会深究的。

     

    4.全栈开发者 (Full-stack Developer ) :

    - 结合前端和后端技能,能够独立构建完整的Web应用程序。

    -学习操作系统和服务器管理,以便部署应用程序。掌握版本控制系统,如Git

    -开始使用云计算平台(如AWS、Azure、GoogleCloud)来托管应用程序。

    5.DevOps工程师:

    -学习自动化部署和持续集成/持续交付(CI/CD)流程,以提高开发团队的效率。掌握容器化技术,如Docker和容器编排工具,如Kuberneteso。

    -理解基础设施即代码 (lnfrastructure as CodelaC)的概念,以自动化基础设施管理。

    6.云架构师:

    - 深入研究云计算架构,了解不同云服务的特性和最佳实践。

    -设计高可用性、可伸缩性的分布式系统。

    - 掌握安全性和监控策略,确保应用程序的稳定性和安全性。

    7.技术领导者:

    -培养团队协作和沟通技巧,领导开发团队。

    -制定技术路线图参与项目规划和架构设计,持续学习新的技术和趋势,以保持竞争力。

    很多刚入门的人不知从何下手,感觉需学习的知识太多了,到底哪些技术好 ?

    想我当初毕业时选择就业方向,为了开端顺利选择了前端,不过当时前端正热,我的选择也让我安稳的度过了最难的就业阶段,若是如今的毕业生选择方向,我建议去走后端,前端处境很尴尬。

    其实不管从哪个方向入手最重要的都是一定要有正确的路线图,开始阶段都要针对自己的方向进行深耕,深度挖掘,直至渗透到底层。只有在一方站稳脚跟,才能保证后续的进步稳扎稳打,不然就是半瓶水晃荡,两头都懵。

  • 相关阅读:
    Systemd Rsync 文件定时同步
    算法笔记:堆
    elasticsearch访问9200端口 提示需要登陆
    检测Windows安全缺陷工具wesng的学习与使用
    微机原理_14
    批量获取CSDN文章对文章质量分进行检测,有助于优化文章质量
    ASP.NET-Server.UrlEncode
    手把手调参最新 YOLOv7 模型 推理部分 - 最新版本(一)
    06-`Linux`的用户和用户组管理
    多商户商城系统功能拆解24讲-平台端分销会员
  • 原文地址:https://blog.csdn.net/Sebdhsk/article/details/140466147