你好,我是刘江,我在互联网上的昵称是江辰,很高兴和你在这个课程见面
先介绍下我自己,最早我是在爱用科技公司工作,负责的是爱用商品业务线,在这家公司待了两年左右的时间,从一个完全不懂技术的应届生到全栈开发工程师,这段经历为我的全栈技能打下了一个很好的基础。
后来,我辗转进入多家公司任职,负责过很多产品的开发,比如有 ToB视频产品、CRM订单系统、直播电商等等。有从 0 到 1 ,也有半途进入。完整开发过微信小程序、H5、Web,也有自己偶尔捣鼓 APP,过往的经历,使我能自己一个人独挑大梁。这么多领域的工作让我快速成长,并积累了大量的宝贵经验。
入行这么多年,从后端到前端,从设计开发到线上运维,我都参与其中,带领过团队攻克很多壁垒。以全栈开发工程师的角色参与了不少的核心业务产品,也能让我在过需求评审的时候,站在前端的角度去思考后端设计,或是从后端的角度思考前端设计,再或是跟产品,设计同学极限拉扯
那提到全栈工程师,你可能第一时间会想到 "全能" "无所不能"等一些词语,也可能听到过其他人对它或褒或贬的评价,那么,我们应该怎么充分的认知这个角色呢?我想和你聊聊我的理解
我们来看看 chatGPT(3.5) 理解的全栈开发:
全栈开发(Full-Stack Development)是指开发人员能够熟练掌握多个领域的技能,可以开发完整的应用程序,包括前端、后端和数据库等多个层面。全栈开发人员需要掌握多种编程语言、框架和技术,并能够快速适应不同的开发环境和工具。
全栈开发可以实现更高效和协调的工作流程,可以更快地创建和部署应用程序,并且可以更好地理解整个应用程序的架构和流程。全栈开发人员不仅需要深入了解前端技术,如HTML、CSS、JavaScript及其框架,还需要熟悉后端技术,如数据库、服务器端脚本语言(如PHP、Python、Java等)及其框架。
总的来说,全栈开发人员需要掌握多个领域的技能,能够独立完成整个应用程序的开发和部署,从而提高工作效率和技术竞争力。
提取几个关键字眼,掌握多个领域的技能、可以开发完整的应用程序、能适应不同的开发环境和工具
从我的角度上来理解这段话,本质就是一个工程师不局限于某个领域的技能,从而扩展多个领域,点缀多棵技能树;使自己的路走的更加广阔
那职业发展路线上来说,为什么我推荐你应该成为全栈开发工程师呢?
提高自己的综合能力
全栈开发工程师需要具备前端、后端、数据库、网络、安全等方面的知识和技能,能够更全面地理解软件开发的全过程,包括需求分析、系统设计、编码实现、测试和部署等环节,通过多项能力的学习过程,不断的总结和复盘知识点,能让你出现一门新的技术,快速学习,掌握核心知识点
以我为例,最开始接触 Java(学校),PHP(工作后),发现这些语言无非是些基础知识、能做什么事、怎么做的,我经常会拿这样类似的语言模板去套,方便让我快速入门,经过这些整理之后,不管是后端语言,还是前端语言,对我而言都是实现业务的手段工具
高效的团队协作
全栈开发工程师可以更好地协调前后端的开发工作,使得前后端的开发能够更加高效地协作,从而提高项目的效率。
举例来说,当你是前端角色,如果你拥有后端知识。恰巧跟你经常合作的后端同学突然遇到个问题,卡住了。又恰好你懂,可以帮助他,对吧,关系就这么起来了。作为后端角色来说,依然如此。
我个人经常会遇到后端、运维问我一些问题,比如问这个接口报错了,报错信息,以常见的为例:入库操作错误、没有权限操作服务器上的文件、Nginx/Docker 服务挂了,这都是很常见的问题,拥有全面的知识点,能让你在团队中建立威信
就业和创业
由上面可知,全栈开发工程师本身拥有多技能属性,团队会非常欢迎这样的人。往往可以站在自己的角度来思考问题,又可以站在他人的角度来思考问题,这无疑提高了团队的沟通和配合,这使得他们的职业机会更加广泛,可以在不同领域的公司中找到合适的工作。
创业,全栈开发工程师是创业的最佳技术角色,有了产品原型和基础设计,可以迅速实现第一个版本
总之,全栈开发工程师的优势在于综合能力、团队协作、职业机会和发展前景等方面。
根据领英2022年的就业报告,“全栈开发者”也在热门新兴工作名单上。至于未来前景,美国劳工统计局表示,网络开发人员的就业市场将增长13%(至少到2030年),这比平均水平要快。
最后,我个人认为对于很多程序员来说,全栈开发工程师这个职位对于自己的发展的而言,是个非常好的进阶方向。