Many programmers who work for a certain number of years feel that they have reached the bottleneck and do not know how to break through, in fact, this time will break through the legendary architect.
Architects are a very mysterious person, so what is the level of the architect's technology in general? How can I be called an architect?
Technical depth
Have you seen the JDK source code, see the class implementation principle is what.
HTTP protocol
TCP protocol
Consistent hash algorithm
How the JVM loads bytecode files
How the ClassLoader unloads bytecode
The difference between IO and NIO, NIO benefits
Java thread Pool Implementation principle, KeepAliveTime parameters such as the role.
HTTP connection Pooling Implementation principle
Database connection pooling Implementation principles
How the database is implemented
Technical framework
See what open source framework of source code
What are the pros and cons of using Redis,redis? How does redis achieve capacity expansion?
Netty is how to use the thread pool, why use it so
What are the pros and cons of using spring,spring?
Spring's IOC container initialization process
Spring's IOC container implementation principle, why beans can be found through byname and Bytype
Spring AOP Implementation Principles
How the message middleware is implemented, and what are the technical difficulties
System architecture
How to build a highly available system
Which design patterns can increase the scalability of the system
Introduces design patterns such as template mode, command mode, policy mode, adapter mode, bridging mode, decoration mode, observer mode, status style, visitor mode.
Abstract ability, how to improve the efficiency of research and development.
What is high cohesion low coupling, please give examples of how to achieve
What situation with the interface, what condition with the message
If AB two systems depend on each other, how to release dependencies
How to write a design document, what is a directory
What scenarios should be split system, what scenario should merge system
What is the difference between the system and the module, and what scenarios are used
Distributed Systems
Distributed transactions, two-phase commit.
How to implement a distributed lock
How to implement distributed session
How to guarantee the consistency of messages
Load Balancing
Forward proxy (client proxy) and reverse proxy (server-side proxy)
CDN Implementation Principle
How to improve the system's QPS and throughput
Actual combat capability
Have you dealt with the problem on the line? There is a memory leak, a CPU utilization level, and how the application is handled without responding.
Have you encountered any technical problems in the development? How to solve the
If there is a billions of whitelist, high concurrent queries are required daily during the day and need to be updated at night to design this feature.
How Sina Weibo is enabling Twitter to Subscribers
How Google returns the search results to the user within a second.
12306 how the booking system of the website is implemented, how to ensure that no ticket is not oversold.
How to implement a second kill system, to ensure that only a few users can buy a product.
Soft power
How to learn a new technology, such as how to learn Java, focus on learning what
What new technologies are in focus
How to deal with a lot of work tasks and very miscellaneous
How Project Latency is handled
It's not the same as my colleagues ' design ideas.
How to ensure the quality of development
What is career planning? Short term, what is the long term goal
What is the planning of the team?
To introduce myself from work to the present and grow there
To summarize:
Presentation layer: Spring MVC 3.1 + annotation
Control Layer: Spring 3.1
Persistent Layer: Hibernate 3.6 +jdbctemplate
Background List control: Displaytag 1.2
Ajax Framework: DWR 3
JS Framework: Jquery
Caching mechanism: Spring 3.1 cache + ehcache/memcached
Static mechanism: freemarker static/spring MVC pseudo-static
Page technology: EL + JSTL +jsp
Safety Framework Spring Security
Search Engine: Lucene
Chinese word breaker: Ikanalyzer
Template engine: Apache tiles 2.22
Linux, Nginx, PHP, MySQL, almost standard
The deployment view requires:
Database: MySQL
Web server: Under Windows with Apache, Linux under Ngnix
Application Server: Tomcat jboss,tomcat,weblogic
In fact, can become an architect with the opportunity to have a great relationship, such as a programmer, the above has done, but the company did not give him the opportunity to do, a real framework of opportunity. Because before the architect does not leave, he will not have the opportunity, this is the reality!
Want to learn the latest Java technology, want to talk to the technical Daniel one-to-one exchange can add group: 744677563. Every night in the group, there will be a live video of Daniel explaining the latest technology, and there are free videos learning resources in the group.
People to middle-aged, technical people began to worry about themselves by the former wave on the beach, was "laid off", or "early laid off" is simply scared shivering ah!
The systematic study work needs is the basic knowledge, but is not to Baidu or the Google search data solves.
This helps to develop a more rational technical architecture, or to improve the inadequacy of the existing technology architecture, and to create synergies between the knowledge by correlating the relevant knowledge analysis after encountering problems. In order to let not do research and development of operations colleagues on research and development do not feel mysterious, can go to analyze the underlying causes of abnormal faults, I deliberately summed up a system of learning programs, this knowledge is systematically passed through a small program case to everyone.
Performance tuning:
Application Framework Source code interpretation:
Distributed architecture:
Micro-service Topics:
Team Collaboration Development:
Shopping mall Project Combat:
To help you get out of this midlife crisis, take the path to a raise.
This time we recommend a free learning group 744677563, which summarizes Java distributed, High concurrency, JVM, high performance, microservices, blockchain, big data and other technologies, as well as interview resources.
The achievement of the great God is not a dream, or depends on whether you add
A 8-year Java architect sharing experience how to become an architect