社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

组里来了个9年经验,完全不懂docker和k8s,只会crud。。。

鸭哥聊Java • 4 月前 • 390 次点击  

大家好,我是鸭哥。

最近看到有人在网上发帖:8年以上的开发,对docker和k8s不熟悉的正常吗?组里来了个9年经验,完全不懂这方面,只会crud。说实话,我第一反应是,太正常了

有人可能会问:“这算什么正常?” 我这可不是瞎说,真得看你在哪家公司、负责啥项目、做的是什么类型的开发工作

先来说说这个 9 年经验的大佬吧,为什么他不懂 Docker 和 Kubernetes?这事其实分情况,别急着说人家能力不行。

你看有的公司,像鹅厂这样的大厂,业务分得特别细。DevOps 是单独的团队,专门处理 CI/CD、部署、运维的事儿。业务开发的团队可能完全接触不到这些底层技术,顶多是在自己本地用 Docker 跑跑项目,部署的事儿交给 DevOps 就完事了。

有网友就说了,鹅厂的业务开发几乎不碰 CI/CD,只需要了解 Docker 的基本用法就行,平时用来跑编译或推送开发环境的镜像。

说实话,我觉得这位网友说得很实在。大厂的业务开发大多关心的是复杂业务逻辑的实现,像部署这些活儿,交给 DevOps 或专门的运维团队更为高效。

再看看有些中小型公司,开发和运维往往是合一的,也就是说你得既会写代码,还得会部署服务。尤其是创业公司,人少事多,大家都得多面手。开发人员不仅要会业务开发,还得懂 Docker 和 K8s,负责部署应用,甚至处理生产环境的异常问题。

所以,这事儿不能一刀切,得看公司的情况。如果你是创业公司,开发不懂 Docker、K8s,那可能确实不太行,但如果是在大厂,这就完全正常。每家公司技术栈不同,分工也不同,别轻易就说人家菜。

说到这儿,很多朋友可能会问:那不同年限的开发者究竟该掌握什么技术呢?我觉得这事儿可以从“广度”和“深度”两个维度来聊

1-3年:打好基础

刚入行的开发者,基本就是老老实实打基础。什么语言基础、算法、数据结构、数据库操作、Linux 基本命令,这些东西是重中之重。

你可以不需要懂容器技术、CI/CD 这些东西,但你至少得熟悉基本的业务开发,比如如何写 CRUD,如何操作数据库,如何写单元测试。

这个阶段,写好增删改查是最基础的工作,千万别觉得简单。很多初级程序员一上来写的 CRUD 代码冗长且不优化,这个时候,多练习,学会写出优雅、简洁的代码是关键。Docker、K8s 这些可以先不用急着学,重点是掌握扎实的编程能力。

3-5年:技术深度和广度开始拓展

到了 3-5 年,你该在业务逻辑上更有深度了。这个阶段,你需要学会优化查询性能、编写复杂业务逻辑、设计数据库表结构,甚至要对代码的可维护性、扩展性有一定的认识。你可能还会接触一些微服务架构、缓存机制、消息队列这些东西。

Docker 和 K8s 这些容器技术,可以开始接触了。你不需要深入了解 Kubernetes 的复杂调度,但起码要懂得 Docker 的基本操作,学会如何容器化应用程序,了解容器镜像的构建流程。

如果你的公司已经开始使用容器编排,那么掌握 Kubernetes 的基础用法也是有帮助的,比如如何查看 Pod 状态、重启服务等。

5-8年:进入中级开发阶段

到了 5-8 年,你不仅要能独立处理业务,还需要有一定的架构意识。这个时候,除了业务开发的能力,你可能还会接触到系统设计,甚至参与到架构的优化和调整中去。

容器技术这时就显得尤为重要了,尤其是在微服务盛行的今天,Docker 和 K8s 的熟悉程度会影响到你对整个系统的理解。

应该熟悉容器编排的工作原理,了解如何通过 Kubernetes 实现应用的自动扩容、负载均衡,甚至在高并发场景下,如何通过容器技术提升服务的稳定性。

8年及以上:全面掌控业务和技术栈

到了 8 年及以上的资深开发阶段,你应该具备的就不仅仅是业务能力了,而是整个技术栈的掌控能力。 

你需要对自己所做的系统有一个全局的把控,了解每一个环节的技术栈,知道如何做性能调优,如何设计高可用的系统,如何保障服务的稳定性和扩展性。

Docker 和 K8s 这些容器技术虽然是运维的事儿,但你得起码做到“心里有数”。说白了,不一定要你亲自写 Kubernetes 的配置文件,但你得知道这个东西如何运作,知道出现问题时应该如何排查。

说得直接点,这个时候你不一定是亲自动手的那个人,但你得能指导别人做,或者在关键时刻做出判断

其实,每个人的成长轨迹不同,技术栈也各有差异。我们不能因为有人不熟悉某些技术就去评判他水平不行。

再者,Docker 和 K8s 说实话,学起来并不复杂,学会基础操作也就一两天的事。要是一个 9 年开发完全不懂 Docker,可能是他没用过而已,真让他学,恐怕分分钟就上手了。

最重要的是,不要被“技术焦虑”困住,学技术是无止境的。你今天可能不熟悉 Docker 和 K8s,但只要有需要,几天时间就能补上。别让这些东西影响你的心态,保持学习和进步的状态才是王道。

好了,说了这么多,大家怎么看呢?你们觉得 8 年开发不懂 Docker 正常吗?欢迎大家在评论区分享自己的看法!

对编程、职场感兴趣的同学,可以链接我,微信:yagebug  拉你进入“程序员交流群”。
🔥鸭哥私藏精品 热门推荐🔥

鸭哥作为一名老码农,整理了全网最全《Java高级架构师资料合集》
资料包含了《IDEA视频教程》《最全Java面试题库》、最全项目实战源码及视频》及《毕业设计系统源码》总量高达 650GB 。全部免费领取!全面满足各个阶段程序员的学习需求。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/174443
 
390 次点击