一、Java 核心技术硬实力
(一)Java 基础与并发
熟练掌握变量、数据类型、运算符、条件语句、循环语句、异常处理。
掌握封装、继承、多态三大面向对象特性;会定义类、创建对象、使用构造方法。
精通 ArrayList、LinkedList、HashMap、HashSet 等常用集合;掌握不同集合的底层实现、优缺点和适用场景。
会使用泛型定义通用工具类;会用反射获取类信息并操作。
会创建线程(继承 Thread 类 / 实现 Runnable 接口);掌握线程池、synchronized/ReentrantLock 锁机制、CAS 无锁算法;理解 JMM,解决可见性、原子性、有序性问题。
(二)JVM 深度掌握
掌握堆、方法区、虚拟机栈、本地方法栈、程序计数器的作用和特点。
掌握标记 - 清除、标记 - 整理、复制算法;熟悉 Serial、Parallel GC、CMS、G1、ZGC 等垃圾回收器及适用场景;会查看 GC 日志,分析 GC 停顿问题。
掌握双亲委派模型;熟悉类加载的生命周期(加载、验证、准备、解析、初始化)。
用 jmap、jhat 工具分析堆转储文件,定位内存泄漏点;用 jstack 查看线程堆栈,定位死锁、线程阻塞问题;调整 - Xms、-Xmx、-XX:+UseG1GC 等参数,减少 GC 停顿时间。
(三)主流框架与生态
掌握 IOC 依赖注入,会用 XML / 注解方式配置 Bean;掌握 AOP 切面、通知、切点,实现日志、权限、事务等功能;掌握声明式事务、编程式事务。
会创建 Spring Boot 项目,配置 application.yml,集成 MyBatis、Redis 等组件,打包部署。
会用 Eureka/Nacos 做服务注册发现,用 Config/Sentinel 做配置和熔断,用 Dubbo 实现 RPC 调用。
会写 Mapper 接口和 XML 映射文件,掌握动态 SQL、分页查询、一对一 / 一对多关联查询。
(四)数据库与存储
关系型数据库(MySQL)
掌握三大范式,设计表结构,创建主键、外键、索引。
会写增删改查、多表连接、子查询、分组统计等 SQL 语句。
理解 B + 树索引结构,区分聚簇索引、非聚簇索引,避免索引失效。
用 EXPLAIN 分析 SQL 执行计划,优化慢查询。
理解垂直分库、水平分表,会用 ShardingSphere 实现分库分表。
掌握 ACID 特性、事务隔离级别,解决脏读、不可重复读、幻读问题。
Redis
掌握字符串、哈希、列表、集合、有序集合的使用。
掌握 RDB 和 AOF 两种持久化方式。

掌握主从复制、哨兵模式、Redis Cluster 集群。
掌握缓存穿透、缓存击穿、缓存雪崩的解决方案。
消息中间件(Kafka/RabbitMQ)
会发送和消费消息,保证消息可靠性(重试、幂等性)。
会处理消息积压问题。
二、架构与分布式系统能力
(一)微服务与分布式
按业务域拆分系统,遵循高内聚低耦合原则;会用 Nacos/Eureka 做服务注册发现,用 Config 做配置中心,用 Sentinel/Hystrix 做熔断降级,实现限流。
理解 CAP 定理、最终一致性;掌握 TCC、SAGA、本地消息表等分布式事务方案。
会用 Nginx、F5 实现负载均衡;会做多机房部署、数据多副本容灾;用 Redis+Lua、Sentinel 实现限流削峰。
(二)系统架构设计
能将复杂业务需求拆分为技术模块,完成技术栈选型(语言、框架、数据库、中间件)。
掌握单例、工厂、策略、适配器、观察者等常用设计模式,并在项目中灵活应用。
编写高内聚低耦合、可扩展、可维护的代码;执行代码评审,遵守编码规范。
(三)云原生与容器化
会写 Dockerfile,构建镜像,运行容器,管理容器。
理解 Pod、Service、Deployment、ConfigMap 等核心概念,会用 Kubernetes 部署和管理应用。
会在阿里云 / 华为云 / AWS 上部署应用,使用云服务(对象存储、云数据库、负载均衡)。
三、工程化与运维保障能力
(一)DevOps 与 CI/CD
会创建 Git 仓库、提交代码、管理分支(master/develop/feature)、合并代码、解决冲突。
会配置 Maven 的 pom.xml,添加依赖,打包成 jar/war 包。
会用 Jenkins/GitLab CI 配置流水线,实现代码提交后自动构建、测试、部署到测试 / 生产环境。
用 JUnit/Mockito 做单元测试;做集成测试验证多模块交互;用 Postman/JMeter 做接口测试。
(二)系统监控与故障处理
用 Prometheus+Grafana 监控系统指标(CPU、内存、磁盘、接口响应时间);用 ELK 收集和分析日志。
通过日志、监控数据定位生产问题(服务宕机、接口超时、数据异常);制定应急预案,处理突发故障(重启服务、切换备用节点);故障后复盘优化。
实现数据多副本备份,定期恢复测试;做多机房部署,实现故障转移。
(三)Linux 与运维基础
熟练使用 ls、cd、mkdir、rm、grep、tail、ps、top 等命令,进行文件操作、日志查看、进程管理。
理解 TCP/IP 协议、HTTP/HTTPS 请求流程、负载均衡原理;会用 ping、telnet、netstat 排查网络问题。
在 Linux 服务器上配置 JDK、设置环境变量、编写启动脚本,部署 Java 应用;配置 Nginx 反向代理。