Java 后端如何发展

2022-12-02 10:20:31 +08:00
donggua997  donggua997
个人情况:
4 年经验 java 后端。现在新公司给我分的组,是(一群 java 后端)做运维开发,devOps 的一切东西,天天 shell 脚本,配置 jenkins ,ci/cd ,安装,部署之类的

不爽的感受:
1.全是杂活,2.这属于从开发转运维开发了,不太对劲吧(正常不是开发->大牛、架构。运维->运开)。3.比另外的 java 后端业务组,事多,更忙

表达感受:
所以昨天跟领导说了,想换回正常 java 后端组。但是他也说了:“java 后端业务组,就是 crud 没啥含金量,在之前组能直接接触技术,而不是业务,能了解中间件原理、devOps 的思想等”。他说因为我说发展方向是架构师,才给我分的运维组,他表示 高级运维工程师==架构师, 难道和我理解的架构师不一样,我认知的架构师是:设计项目的模块,该用什么框架,中间件选型等
我坚持这种工作很烦,如果能选的话,还是做之前的 java 后端吧,最后他同意了,给我换组。

还是迷茫:
做业务开发,很多公司的业务对自己发展也没啥用,技术上就 crud 为主,但是也不能一直做后端 crud ,该怎么往上走走呢,架构师是什么,需要什么能力,其他的就是管理吗,干点什么能提升核心竞争力,才能不至于年纪大被淘汰呢
4643 次点击
所在节点   问与答  问与答
29 条回复
tulongtou
tulongtou
2022-12-02 10:23:35 +08:00
vert.x/spring/tomcat/netty/rocketMQ 这些全是 Java 的,都比 curd 有技术含量
donggua997
donggua997
2022-12-02 10:26:10 +08:00
@tulongtou 但是进不去那么牛的公司的情况下,这哪里有机会自己去写 spring 框架,去写 mq 啊,都是拿来直接用啊
ufan0
ufan0
2022-12-02 10:35:30 +08:00
去了那么牛的公司也很难机会写的,进了公司还得看部门呢,不同部门之间的要求与水平可以说是天壤之别。

去过国内某厂数据库研发玩过几个月,部门 90%以上的人要么空降挖来要么校招生培养,可以说没有社招。

国内这个环境永远不缺人,得清晰得明白自己会技术是为了干什么,为了生存嘛。

多看看书玩玩 demo 就超过绝大部分人了。

话说回来,这一行在国内,有基础技术含量的岗位,从这个人刚毕业就决定了他能不能做了。
donggua997
donggua997
2022-12-02 10:42:32 +08:00
@ufan0 扎心了 知足常乐,混口饭吃
isno
isno
2022-12-02 10:44:33 +08:00
现在中间件、业务框架已经非常成熟了, 纯做这些研究比较“虚”,容易被业务线抵触。

架构师需要什么能力?这个要结合公司、业务的需要去定义,业务初期就搞 CI/CD , 业务中期了搞弹性计算、云原生...

架构师的能力:打好 网络、linux 基础知识就好啦, 现在流行的 Istio 、docker 不都是基于 netfilter 、cgroup 这些基础技术搞的么?

最主要的架构师要分析各类技术瓶颈所在,并带头解决,切勿只说不做,成为”口嗨架构师“。
FstarKing
FstarKing
2022-12-02 10:50:41 +08:00
你这比我好多了,我也是 Java 后端,但是我已经快两年没怎么写代码了,天天搞商务搞项目搞产品,天天写方案写可研写材料,我特别羡慕公司只写 CURD 的同事。
donggua997
donggua997
2022-12-02 10:51:37 +08:00
@isno 这样说的话 架构师和 运维开发工程师 确实很像了啊。ci/cd k8s docker
donggua997
donggua997
2022-12-02 11:04:03 +08:00
@FstarKing 之前我还觉得多学学是好事,现在觉得工作还是清闲的好,时薪高,如果想提升自己能有更多的时间。 尽量避免浪费时间精力做重复的事
FstarKing
FstarKing
2022-12-02 11:08:35 +08:00
@donggua997 对啊,我们公司那些搞 CURD 的,真的很闲,随时都可以带薪学习
honamx
honamx
2022-12-02 12:22:08 +08:00
去哪里都是写业务
listkun
listkun
2022-12-02 12:25:51 +08:00
研发效能吧
hyperdak288
hyperdak288
2022-12-02 12:30:43 +08:00
devops 有很多能干的呀,比如楼上以为同学提的研发效能

基础架构部平时的工作很像运维,因为大部分 cloud 基础组件都是现成的

如果你感觉杂活多,推荐看一下 google 的《 sre 工作手册》减少琐事来提升自己

我目前的 title 就是架构师,以前在业务系统,现在负责部门研发提效,不负责具体的业务系统了。

最近一个 q 干的事是把整体硬件成本降低了 400w,这个过程有很多手段来优化成本,这些手段又会和技术强相关
hyperdak288
hyperdak288
2022-12-02 12:32:35 +08:00
贴一段《凤凰架构》里面的话,让你大概能明白各个组的职责和能力区别:

举个具体例子,用 Kubernetes 部署一套 Spring Cloud 版的 Fenix's Bookstore ,你需要分别部署一个到多个的配置中心、注册中心、服务网关、安全认证、用户服务、商品服务、交易服务,对每个微服务都配置好相应的 Kubernetes 工作负载与服务访问,为每一个微服务的 Deployment 、ConfigMap 、StatefulSet 、HPA 、Service 、ServiceAccount 、Ingress 等资源都编写好元数据配置。这个过程最难的地方不仅在于繁琐,还在于要写出合适的元数据描述文件,既需要懂的开发(网关中服务调用关系、使用容器的镜像版本、运行依赖的环境变量这些参数等等,只有开发最清楚),又需要懂运维(要部署多少个服务,配置何种扩容缩容策略、数据库的密钥文件地址等等,只有运维最清楚),有时候还需要懂平台(需要什么的调度策略,如何管理集群资源,通常只有平台组、中间件组或者核心系统组的同学才会关心),一般企业根本找不到合适的角色来为它管理、部署和维护应用。


这里面涉及了 开发、运维、核心系统 /中间组 三种角色
hyperdak288
2022-12-02 12:33:49 +08:00
https://cloud.google.com/architecture/devops 从这里面能找到很多 devops 能干的事
superliy
2022-12-02 13:09:21 +08:00
@FstarKing 兄弟 我羡慕你
tulongtou
2022-12-02 14:02:42 +08:00
@donggua997 GitHub 修 bug ,提 pr 啊
donggua997
2022-12-02 14:16:26 +08:00
@tulongtou 好建议
zzzzzzZ
2022-12-02 16:33:11 +08:00
你领导没坑你,是你格局太低。架构师也是有方向的,更多可以看[https://blog.51cto.com/u_15214399/2820204]

你领导是希望培养你成为 infra 架构师,也就是基础架构。核心技能包含了你看不起的 devOps ,云原生等等。如果不好理解,可以理解你刷的“架构师”和“框架”八股题里面 80%都是 infra 架构师的技能,包括#13 楼提到的那些工作。
流控、RPC 、存储(任何形式)、代理、镜像制品、调度编排、负载、降级与熔断、服务网格、O11Y 、线程等等等等

随便提一些你耳熟能详的东西,都必须得明白原理、会搭会用:
K8S 、GPE 、Istio 、Helm 、Gitlab 、Skywalking 、Seata 、Sentinel 、Nacos/Apollo 、Jenkins 、Harbor 、Nginx 、EFK/ELK 、Maven 、MinIO 、Mongo 、Redis 、MyCat/Sharding 、Arthas 等等。

你领导那句话“能了解中间件原理、devOps 的思想等”你是一点没听进去。csdn 抄答案搭个集群刷点八股题你就懂了?

“该用什么框架,中间件选型”
Nacos 和 Apollo 怎么选怎么搭怎么用? Zuul 还是 Gateway ? Hystrix 还是 Envoy ? Mycat 还是 Sharding ? Kafka 还是 Pulsar ? Clickhouse 还是 TDengine ? Shiro 还是 Security 还是 SA-TOKEN ? Nacos 还是 Eureka ?上 Nacos 要不要顺道 Sentinel+Gateway ? SLB 方案? S3 怎么做? EFK 来一套? GPE 上不上?上 OTEL 还是封装 openTracing 协议?什么指标需要预警需要优化?这个服务弹性伸缩怎么配为什么?你这五台机器想跑多少的用户怎么优化? Apache 顶级项目你知道几个?做一套风控用哪些?做个 IoT 中台用哪些?

你懂个屁的选型,你只知道百度 /csdn 别人用啥你用啥。

安装部署完你不改参数?不了解怎么实现高可用?不配一些东西来做高并发?不追踪指标?不去了解服务的全生命周期?不解决服务故障优化别人代码?
哪怕坚持做 devOps 也能做 TSA ,多理解一点业务也能做 SA ,最有技术的 Infra 都不愿意去搞,眼高手低?
LemonCoo1
2022-12-02 17:38:03 +08:00
非常同意楼上老哥的回答,我就不想写 CRUD 了 ,巴不得去搞搞 devops ,结合业务上的流控、异常、监控、告警之类的系统
HugoChao
2022-12-02 17:41:44 +08:00
可能有人技术很强,但公司里最牛的一定是懂业务的人
加油,devOps 没什么不好的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/899532

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX