What knowledge does a powerful Java senior architect need to know? I think this is also a question that many readers are eager to know, because if you don’t stand in a macro perspective, all the knowledge points you have learned are scattered, and you feel like a lost deer, stumbling, always feeling It's a little late, isn't it?
This is JD.com's current recruitment information for a JAVA post architect. Do you feel that you have mastered all the technologies in it?
How to connect knowledge points to form a knowledge map or knowledge system is very important. Below, the editor has compiled some learning planning routes and rich learning materials for you, which are full of dry goods !
first
The most important thing is thinking. Why are senior architects called the top-level developers? It is because they have their own unique thinking, and learning also requires thinking. Therefore, mind maps and routes are everyone's The most important content!
0-1 year entry:
-
Java basic review (object-oriented + Java super class + Java reflection mechanism + exception handling + collection + generics + basic IO operations + multi-threading + network programming + new features of JDK)
-
A Preliminary Study on Web Programming (Servlet+MySQL Database+Commodity Management System Actual Combat)
-
SSM from entry to proficiency (Spring+SpringMVC+Mybatis+commodity management system combat-SSM version)
-
Quick Start with SpringBoot (SpringBoot+ Combat Commodity Management System Based on SpringBoot)
-
Zero-distance Internet project actual combat (Linux+Redis+Double Eleven Second Kill actual combat system)
1-3 years senior engineer:
-
Advanced concurrent programming (combat of concurrent tools + CAS + display lock analysis + internal mechanism of thread pool + performance optimization)
-
JVM in-depth analysis (understanding runtime data area + interpretation of off-heap memory + JDK + memory leak troubleshooting + Arthas + GC algorithm and garbage collector + class loading mechanism, etc.)
-
Advanced MySQL
-
Go deep into the bottom layer of Tomcat (threading model + performance tuning)
3-5 years senior:
-
Database (tuning + transaction + lock + cluster + master-slave + cache, etc.)
-
Linux (command + production environment + log, etc.)
-
Middleware & distributed (dubbo+MQ/kafka, ElasticSearch, SpringCloud and other components)
5-7 year structure:
-
Open source framework (Spring5 source code + SpringMVC source code + Mybatis source code)
-
Distributed architecture (Zk actual combat + RabbitMQ+RocketMQ+Kafka)
-
Efficient storage (Redis+mongoDB+MySQL high availability+Mycat+Sharing-Sphere)
-
Microservice Architecture (RPC+SpringBoot+SpringCloud Netflix+SpringCloud Alibaba+docker+k8s)
10+ Years of Food Delivery: A Little Joke
Part1: Getting Started in Year 0-1
1. Java basic review
2. A Preliminary Study of Web Programming
3. SSM from entry to proficiency
4. Quick Start with SpringBoot
5. Zero-distance Internet project actual combat (imitation of Xiaomi Mall)
Part2: 1-3 years senior engineer
1. Advanced concurrent programming
2. JVM depth analysis
3. MySQL in-depth advanced
4. Go deep into the bottom layer of Tomcat
Part3: 3-5 years senior
1. Database
2.Linux
3. Middleware & Distributed
Part4: 5-7 year structure
1. Open source framework
2. Distributed architecture
3. Efficient storage
4. Microservice architecture
Summarize
Although I often laugh at myself, I want to become a delivery specialist in ten years, but in fact, relying on my own efforts, I can reduce the anxiety after the age of thirty-five. After all, there are not many good architects.
Architect is the career goal of most of our technicians. A good architect is the result of the collaboration of opportunity (company), personal effort (hard work, willingness to study), and talent (true love). , practice + opportunity + hard work can help you become an excellent architect.
If you also want to be a good architect, then maybe you need to read the above Java growth notes , hoping to help your career development. The full version can be downloaded below