我做云原生的那几年
背景介绍
在2020年6月,我加入了一家拥有超过500人的企业。彼时,前端团队人数众多,有二三十名成员。在这样的大团队中,每个人都要寻找自己的独特之处和核心竞争力。否则,你可能会沉没于常规的增删改查工作中,无法展现自己的真正价值,或者在别人已经铺好的道路上与同伴竞争。
近期发布的《2023开发者职场生存白皮书》清晰地揭示了这种情况。其中提到,一线城市的竞争日益激烈,二线地区的开发者陷入无尽的内卷,而三、四线地区的开发者则面临着职业降维打击。对于前端开发者来说,真正的发展空间已经变得十分狭窄。这种趋势早早地引起了我的注意。我意识到,仅仅追求技术的深度并不明智。今天你在公司撰写一篇关于TypeScript的常用技巧的文章,但明天,可能就有人发表关于TypeScript更高级的内容;再过一段时间,可能就有人开始探讨TypeScript的源码解析。无形中自己陷入了内卷的恶性循环。
在认识到这一点后,我决定不再单纯地深入技术研究,因为那样的投入与收益并不成正比。相反,我选择拓展与我的职业岗位相关的知识,并在看清未来技术的大趋势后,决定加强我的云技术能力。这样,不仅可以提高自己的技术广度,还能在多元化的领域中展现自己的价值。
学习历程
自从加入公司后,我有幸成为了容器引擎开发部门的一员。我们的目标是研发一个与rancher和kubersphere相竞争的产品。在工作之余,我也投入了大量的时间来研究这两大云平台。对他们的前端部分进行了深入探讨后,我还撰写并发布了多篇相关文章,并尝试为它们提交PR,甚至还自行定制了部分页面。
在这段期间,我也如饥似渴地吸收了大量云原生相关的知识,例如如何使用Docker来部署镜像、如何为前端构建Docker镜像,以及如何在本地通过minikube部署前端应用等。云计算的核心技术是Kubernetes,但在实际应用中,我们还需要结合诸如Docker、API Gateway、云原生DevOps等多种技术。可以说,云原生技术构成了一个广阔的技术生态圈。
尽管很多前端开发者都精通TypeScript,但真正了解Kubernetes的却寥寥无几。这使得我在团队中逐渐获得了一定的威望。当同事们在前端项目部署或构建前端镜像方面遇到问题时,很多人都会找到我,寻求解决方案。确实,有些人可能会认为,一个前端开发者不深入研究前端技术,却投身于运维领域,这是否“不务正业”?但作为一名软件工程师,我们不能这样局限自己。除了做好职责范围内的工作,我们还应当扩展自己的技术视野,全面了解整个应用的生命周期。毕竟,每一个应用都需要部署,如果需要上云,那就必须进行容器化处理。这意味着我们不仅需要掌握云技能,还要能够处理常见的业务场景,并在出现问题时能迅速进行排查。
在公司内,我进行了多次关于Kubernetes的技术分享。其中,利用GitLab CI/CD自动化部署到Kubernetes集群的主题,受到了团队的一致好评。这也证明了,跨界的学习和尝试,往往能带来意想不到的成果和收获。
收获
在公司,我选择了一条与众不同的晋升之路,不盲目追随,不随波逐流,而是凭自己的技能和理念,开创了自己的职业道路。我没有试图攀登别人已经达到的高峰,而是选择了另起炉灶,铸造属于自己的事业之路。通过深入了解上下游、熟悉业务流程,并结合我所掌握的技术,我对整个应用的开发和部署流程进行了优化。而这样的技能,在现今的IT行业中,无疑是每家公司所迫切需要的。
凭借这些努力和成果,我两次荣获了公司的“月度之星”的殊荣。
业余时间,我也没有闲下来。我创建了一个关于云原生的专栏《我做云原生那几年》,目前已经累积发布了67篇文章。现在的前端领域中,真正熟悉云原生的人是相当少的。这片广袤的领域就像一块未被开垦的荒地,很少有人知道前端与云原生结合会碰撞出何种火花。但可以确定的是,这样的探索决定了我的职业生涯绝不会单调。
随着我积累的专业资料越来越多,一家出版社主动接触我,询问我是否有意将这些经验和知识整理成书。经过近一年的辛勤努力和创作,我终于迎来了人生中的第一本书的出版。这不仅是对我职业生涯的一种肯定,也为更多的开发者提供了一条新的探索路径。
总结
很感谢自己一直以来的努力,没有放弃成长的机会,坚持学习云计算等前沿技术。学习一项新技术,特别是云技术,概念多,耗时长,资料杂且多,所以在这个漫长的学习过程我也走了很多弯路。对于现在要学习云技术的同学,我要告诉你们一个好消息,亚马逊云科技推出了完整的云技能认证体系。如针对新手的AWS Certified Cloud Practitioner,主要考察队亚马逊云科技的基本了解,无需基本相关经验。
还有针对比较有经验的开发者准备的 AWS Certified Solutions Architect - Professional 与AWS Certified DevOps Engineer - Professional基于角色的认证,用于验证设计安全,优化和现代化的应用程序以及在亚马逊云科技上实现流程自动化所需的高级技能和知识。
本片文章就写到这里,祝大家都能在云计算的海洋里遨游,利用技术转化为生产力,为业务赋能。
相关文章:

我做云原生的那几年
背景介绍 在2020年6月,我加入了一家拥有超过500人的企业。彼时,前端团队人数众多,有二三十名成员。在这样的大团队中,每个人都要寻找自己的独特之处和核心竞争力。否则,你可能会沉没于常规的增删改查工作中࿰…...
@EventListener注解使用说明
在Java的Spring框架中,EventListener注解用于监听和处理应用程序中的各种事件。通过使用EventListener注解,开发人员可以方便地实现事件驱动的编程模型,提高代码的灵活性和可维护性。本文将详细探讨EventListener注解的使用方法和作用&#x…...

算法通关村第五关-白银挑战实现队列
大纲 队列基础队列的基本概念和基本特征实现队列队列的基本操作Java中的队列 队列基础 队列的基本概念和基本特征 队列的特点是节点的排队次序和出队次序按入队时间先后确定,即先入队者先出队,后入队者后出队,即我们常说的FIFO(first in fi…...

协力共创智能未来:乐鑫 ESP RainMaker 云方案线下研讨会圆满落幕
近日,乐鑫 ESP RainMaker 云方案线下研讨会(深圳)在亚马逊云科技与合作伙伴嘉宾的支持下成功举办,吸引了众多来自智能家电、照明电工、能源和宠物等行业的品牌客户、方案商和制造商。研讨会围绕如何基于乐鑫 ESP RainMaker 硬件连…...

读取谷歌地球的kml文件中的经纬度坐标
最近我在B站上传了如何获取研究边界的视频,下面分享一个可以读取kml中经纬度的matlab函数,如此一来就可以获取任意区域的经纬度坐标了。 1.谷歌地球中划分区域 2.matlab读取kml文件 function [sname,lon,lat] kml2xy(ip_kml) % ip_kml ocean_distubu…...

1深度学习李宏毅
目录 机器学习三件事:分类,预测和结构化生成 2、一般会有经常提到什么是标签label,label就是预测值,在机器学习领域的残差就是e和loss编辑3、一些计算loss的方法:编辑编辑 4、可以设置不同的b和w从而控制loss的…...

Flask_Login使用与源码解读
一、前言 用户登录后,验证状态需要记录在会话中,这样浏览不同页面时才能记住这个状态,Flask_Login是Flask的扩展,专门用于管理用户身份验证系统中的验证状态。 注:Flask是一个微框架,仅提供包含基本服务的…...

利用Graviton2和S3免费套餐搭建私人网盘
网盘是一种在线存储服务,提供文件存储,访问,备份,贡献等功能,是我们日常中不可或缺的一种服务。很多互联网公司都为个人和企业提供免费的网盘服务。但这些免费服务都有一些限制,比如限制下载速度࿰…...
跟着GPT学设计模式之单例模式
单例设计模式(Singleton Design Pattern)一个类只允许创建一个对象(或者实例),那这个类就是一个单例类,这种设计模式就叫作单例设计模式,简称单例模式。 单例有几种经典的实现方式,…...
【MySQL索引与优化篇】数据库调优策略
数据库调优策略 文章目录 数据库调优策略1. 数据库调优的措施1.1 调优目标1.2 如何定位调优问题1.3 调优的维度和步骤第1步:选择合适的DBMS第2步:优化表设计第3步:优化逻辑查询第4步:优化物理查询第5步:使用 Redis 或 …...
基于BP神经网络的风险等级预测,BP神经网络的详细原理,
目录 背影 BP神经网络的原理 BP神经网络的定义 BP神经网络的基本结构 BP神经网络的神经元 BP神经网络的激活函数, BP神经网络的传递函数 代码链接:基于BP神经网络的风险等级评价,基于BP神经网络的风险等级预测(代码完整,数据齐全)资源-CSDN文库 https://download.csdn.n…...

最新Ai智能创作系统源码V3.0,AI绘画系统/支持GPT联网提问/支持Prompt应用+搭建部署教程
一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…...

项目资源不足,常见的5种处理方式
软件开发中,经常会遇到项目资源不足的情况,项目团队如果无法及时获得所需的人力、财力、物力等资源,往往会影响团队士气以及任务质量,造成无法按时完成任务,进而影响项目进度。 因此及时处理和应对资源不足的情况&…...

ER图设计神器,帮你省时省力,高效完成工作!
ER图(Entity-Relationship Diagram)工具用于设计数据库模型,通常用于表示数据实体、关系和属性之间的关系。以下是10个好用的ER图工具。 一、Lucidchart Lucidchart 是一款基于云的协作式图表设计工具,它允许用户创建、编辑和共享…...

Notepad++下载、使用
下载 https://notepad-plus-plus.org/downloads/ 安装 双击安装 选择安装路径 使用 在文件夹中搜索 文件类型可以根据需要设置 如 *.* 说明是所有文件类型; *.tar 说明是所有文件后缀是是tar的文件‘;...

基于若依的ruoyi-nbcio流程管理系统增加仿钉钉流程设计(一)
更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 仿钉钉的开源项目网上也不少,而且很多功能已经也比较完善了,但大部分都不是MIT协议…...

【知网检索征稿】第九届社会科学与经济发展国际学术会议 (ICSSED 2024)
第九届社会科学与经济发展国际学术会议 (ICSSED 2024) 2024 9th International Conference on Social Sciences and Economic Development 第九届社会科学与经济发展国际学术会议(ICSSED 2024)定于2024年3月22-24日在中国北京隆重举行。会议主要围绕社会科学与经济发展等研究…...

带你人工识别C#开源库BarcodeLib生成的一维码Code128
我们是做HIS系统开发的,前段时间发现某些处方的一维码出现无法识别的情况。看了一下一维码生成的逻辑,使用到了BarcodeLib库,经过反复确认,我们程序是没有问题的。后面不得不反编译看一下BarcodeLib生成一维码的逻辑。最后调整一维…...
软考 系统架构设计师系列知识点之系统架构评估(6)
接前一篇文章:软考 系统架构设计师系列知识点之系统架构评估(5) 所属章节: 第8章. 系统质量属性与架构评估 第2节. 系统架构评估 8.2.1 系统架构评估中的重要概念 相关试题 3. 正确识别风险点、非风险点、敏感点和权衡点是进行软…...

指挥通信车360度3d虚拟互动展示系统的优势及特点
通信车是装有通信装备,用于保障通信联络的专用车辆,用于偏僻/特殊环境下的机动通信。并且机动通信局装备通常分为应急综合通信车、网络管理车、程控电话车、自适应跳频电台车、数字扩频接力车、散射通信车、卫星通信车、光缆引接车、线缆收放车和通信电源…...

JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...

dify打造数据可视化图表
一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...