基础知识
- 编程语言:Java C python
- 基础算法
- 基本网络知识:TCP/IP HTTP/HTTPS
- 基本的设计模式
工具方面
- 操作系统:Linux(CentOS|Ubuntu\Fe)
- 代码管理:SVN/Git
- 持续集成(CI/CD):jenkins
- Java的项目管理工具:Menven/Gradle
框架方面
####应用层框架
ssh spring +structs+hibernate(比较老不太需要);- ssm:spring(web框架) springmvc(数据库的访问层)mybatis(数据库的应用)
- spring boot(好上手,自动封箱)
各种中间件
- MQ 消息队列( if处理,解耦等)
- RPC通信框架(提高效率不用七层协议四层就可以访问)gRPC thrift dubbo springclude
- elasticsearch (大数据,数据库,搜索引擎)
还有很多,看项目需要
数据库
- SQL:MySQL(关系型)/postgre SQL(web开发一定会用)
- NoSQL(非关系):Redis(高速缓存) Memcached elasticsearch mongobd(文档数据库)
架构方面
####分布式(有很多)/微服务框架
-
spring clude
-
double
-
rpc通信
####虚拟化/容器化技术 -
Docker(容器化技术,单个的不容易管理)
-
K8S(容器管理) kubernetes
关注源码/性能
- jdk源码以及部分设计思想
- Spring源码
- JVM细节与排错
- 高迸发/高可用(看书学很难项目来体会)